{
  "fullName": null,
  "usage": "[options] [command]",
  "options": [
    {
      "flags": "-v, --version",
      "required": 0,
      "optional": 0,
      "bool": true,
      "short": "-v",
      "long": "--version",
      "description": "output the application version"
    }
  ],
  "commands": [
    {
      "name": "help",
      "description": "Display help for a given command",
      "fullName": "help",
      "usage": "[options] [command]",
      "filePath": "commands/help.js",
      "options": [
        {
          "flags": "-v, --verbose",
          "required": 0,
          "optional": 0,
          "bool": true,
          "short": "-v",
          "long": "--verbose",
          "description": "use verbose output"
        },
        {
          "flags": "-vv",
          "required": 0,
          "optional": 0,
          "bool": true,
          "long": "-vv",
          "description": "more verbose with debug output"
        },
        {
          "flags": "--json",
          "required": 0,
          "optional": 0,
          "bool": true,
          "long": "--json",
          "description": "use json output"
        }
      ]
    },
    {
      "name": "login",
      "description": "Log in to an Azure subscription using Active Directory or a Microsoft account identity.",
      "fullName": "login",
      "usage": "[options]",
      "filePath": "commands/login.js",
      "options": [
        {
          "flags": "-v, --verbose",
          "required": 0,
          "optional": 0,
          "bool": true,
          "short": "-v",
          "long": "--verbose",
          "description": "use verbose output"
        },
        {
          "flags": "-vv",
          "required": 0,
          "optional": 0,
          "bool": true,
          "long": "-vv",
          "description": "more verbose with debug output"
        },
        {
          "flags": "--json",
          "required": 0,
          "optional": 0,
          "bool": true,
          "long": "--json",
          "description": "use json output"
        },
        {
          "flags": "-u --username <username>",
          "required": -15,
          "optional": 0,
          "bool": true,
          "short": "-u",
          "long": "--username",
          "description": "user name or service principal ID. If multifactor authentication is required, you will be prompted to use the login command without parameters for interactive support."
        },
        {
          "flags": "-e --environment [environment]",
          "required": 0,
          "optional": -18,
          "bool": true,
          "short": "-e",
          "long": "--environment",
          "description": "Environment to authenticate against, such as AzureChinaCloud; must support Active Directory."
        },
        {
          "flags": "-p --password <password>",
          "required": -15,
          "optional": 0,
          "bool": true,
          "short": "-p",
          "long": "--password",
          "description": "user password or service principal secret, will prompt if not given."
        },
        {
          "flags": "--service-principal",
          "required": 0,
          "optional": 0,
          "bool": true,
          "long": "--service-principal",
          "description": "If given, log in as a service principal rather than a user."
        },
        {
          "flags": "--certificate-file <certificateFile>",
          "required": -20,
          "optional": 0,
          "bool": true,
          "long": "--certificate-file",
          "description": "A PEM encoded certificate private key file."
        },
        {
          "flags": "--thumbprint <thumbprint>",
          "required": -14,
          "optional": 0,
          "bool": true,
          "long": "--thumbprint",
          "description": "A hex encoded thumbprint of the certificate."
        },
        {
          "flags": "--tenant <tenant>",
          "required": -10,
          "optional": 0,
          "bool": true,
          "long": "--tenant",
          "description": "Tenant domain or ID to log into."
        },
        {
          "flags": "-q --quiet",
          "required": 0,
          "optional": 0,
          "bool": true,
          "short": "-q",
          "long": "--quiet",
          "description": "do not prompt for confirmation of PII storage."
        }
      ]
    },
    {
      "name": "logout",
      "description": "Log out from Azure subscription using Active Directory. Currently, the user can log out only via Microsoft organizational account",
      "fullName": "logout",
      "usage": "[options] [username]",
      "filePath": "commands/login.js",
      "options": [
        {
          "flags": "-v, --verbose",
          "required": 0,
          "optional": 0,
          "bool": true,
          "short": "-v",
          "long": "--verbose",
          "description": "use verbose output"
        },
        {
          "flags": "-vv",
          "required": 0,
          "optional": 0,
          "bool": true,
          "long": "-vv",
          "description": "more verbose with debug output"
        },
        {
          "flags": "--json",
          "required": 0,
          "optional": 0,
          "bool": true,
          "long": "--json",
          "description": "use json output"
        },
        {
          "flags": "-u --username <username>",
          "required": -15,
          "optional": 0,
          "bool": true,
          "short": "-u",
          "long": "--username",
          "description": "Required. User name used to log out from Azure Active Directory."
        }
      ]
    },
    {
      "name": "portal",
      "description": "Open the portal in a browser",
      "fullName": "portal",
      "usage": "[options]",
      "filePath": "commands/portal.js",
      "options": [
        {
          "flags": "-v, --verbose",
          "required": 0,
          "optional": 0,
          "bool": true,
          "short": "-v",
          "long": "--verbose",
          "description": "use verbose output"
        },
        {
          "flags": "-vv",
          "required": 0,
          "optional": 0,
          "bool": true,
          "long": "-vv",
          "description": "more verbose with debug output"
        },
        {
          "flags": "--json",
          "required": 0,
          "optional": 0,
          "bool": true,
          "long": "--json",
          "description": "use json output"
        },
        {
          "flags": "-e, --environment <environment>",
          "required": -19,
          "optional": 0,
          "bool": true,
          "short": "-e",
          "long": "--environment",
          "description": "the publish settings download environment"
        },
        {
          "flags": "-r, --realm <realm>",
          "required": -13,
          "optional": 0,
          "bool": true,
          "short": "-r",
          "long": "--realm",
          "description": "the organization's realm"
        }
      ]
    },
    {
      "name": "telemetry",
      "description": "Manages the data collection preference.",
      "fullName": "telemetry",
      "usage": "[options]",
      "filePath": "commands/telemetry.js",
      "options": [
        {
          "flags": "-v, --verbose",
          "required": 0,
          "optional": 0,
          "bool": true,
          "short": "-v",
          "long": "--verbose",
          "description": "use verbose output"
        },
        {
          "flags": "-vv",
          "required": 0,
          "optional": 0,
          "bool": true,
          "long": "-vv",
          "description": "more verbose with debug output"
        },
        {
          "flags": "--json",
          "required": 0,
          "optional": 0,
          "bool": true,
          "long": "--json",
          "description": "use json output"
        },
        {
          "flags": "-e, --enable",
          "required": 0,
          "optional": 0,
          "bool": true,
          "short": "-e",
          "long": "--enable",
          "description": "use this flag to enable telemetry"
        },
        {
          "flags": "-d, --disable",
          "required": 0,
          "optional": 0,
          "bool": true,
          "short": "-d",
          "long": "--disable",
          "description": "use this flag to disable telemetry"
        }
      ]
    }
  ],
  "categories": {
    "account": {
      "name": "account",
      "description": "Commands to manage your account information and publish settings",
      "fullName": "account",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "list",
          "description": "List the imported subscriptions",
          "fullName": "account list",
          "usage": "[options]",
          "filePath": "commands/account.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            }
          ]
        },
        {
          "name": "show",
          "description": "Show details about a subscription",
          "fullName": "account show",
          "usage": "[options] [subscriptionNameOrId]",
          "filePath": "commands/account.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-s --subscriptionNameOrId <subscriptionNameOrId>",
              "required": -27,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscriptionNameOrId",
              "description": "The subscription to show"
            },
            {
              "flags": "-d --details",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--details",
              "description": "Show extra information about the subscription"
            }
          ]
        },
        {
          "name": "set",
          "description": "Set the current subscription",
          "fullName": "account set",
          "usage": "[options] <subscriptionNameOrId>",
          "filePath": "commands/account.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            }
          ]
        },
        {
          "name": "clear",
          "description": "Remove a subscription or environment, or clear all of the stored account and environment info",
          "fullName": "account clear",
          "usage": "[options]",
          "filePath": "commands/account.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-s --subscription <subscriptionNameOrId>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "Subscription name or id to remove"
            },
            {
              "flags": "-e --environment <environmentName>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-e",
              "long": "--environment",
              "description": "Environment name to remove"
            },
            {
              "flags": "-q --quiet",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-q",
              "long": "--quiet",
              "description": "quiet mode, do not ask for delete confirmation"
            }
          ]
        }
      ],
      "categories": {
        "env": {
          "name": "env",
          "description": "Commands to manage your account environment",
          "fullName": "account env",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List the environments",
              "fullName": "account env list",
              "usage": "[options]",
              "filePath": "commands/account.environment.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show an environment",
              "fullName": "account env show",
              "usage": "[options] [environment]",
              "filePath": "commands/account.environment.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--environment <environment>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--environment",
                  "description": "the environment name"
                }
              ]
            },
            {
              "name": "add",
              "description": "Add an environment",
              "fullName": "account env add",
              "usage": "[options] [environment]",
              "filePath": "commands/account.environment.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--environment <environment>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--environment",
                  "description": "the environment name"
                },
                {
                  "flags": "--portal-url <portalUrl>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--portal-url",
                  "description": "the management portal URL"
                },
                {
                  "flags": "--azure-data-lake-analytics-catalog-and-job-endpoint-suffix <azureDataLakeAnalyticsCatalogAndJobEndpointSuffix>",
                  "required": -61,
                  "optional": 0,
                  "bool": true,
                  "long": "--azure-data-lake-analytics-catalog-and-job-endpoint-suffix",
                  "description": "the data lake analytics job and catalog service dns suffix"
                },
                {
                  "flags": "--management-endpoint-url <managementEndpointUrl>",
                  "required": -27,
                  "optional": 0,
                  "bool": true,
                  "long": "--management-endpoint-url",
                  "description": "the management service endpoint"
                },
                {
                  "flags": "--resource-manager-endpoint-url <resourceManagerEndpointUrl>",
                  "required": -33,
                  "optional": 0,
                  "bool": true,
                  "long": "--resource-manager-endpoint-url",
                  "description": "the resource management endpoint"
                },
                {
                  "flags": "--sql-management-endpoint-url <sqlManagementEndpointUrl>",
                  "required": -31,
                  "optional": 0,
                  "bool": true,
                  "long": "--sql-management-endpoint-url",
                  "description": "the sql server management endpoint for mobile commands"
                },
                {
                  "flags": "--sql-server-hostname-suffix <sqlServerHostnameSuffix>",
                  "required": -30,
                  "optional": 0,
                  "bool": true,
                  "long": "--sql-server-hostname-suffix",
                  "description": "the dns suffix for sql servers"
                },
                {
                  "flags": "--active-directory-endpoint-url <activeDirectoryEndpointUrl>",
                  "required": -33,
                  "optional": 0,
                  "bool": true,
                  "long": "--active-directory-endpoint-url",
                  "description": "the Active Directory login endpoint"
                },
                {
                  "flags": "--publishing-profile-url <publishingProfileUrl>",
                  "required": -26,
                  "optional": 0,
                  "bool": true,
                  "long": "--publishing-profile-url",
                  "description": "the publish settings file URL"
                },
                {
                  "flags": "--gallery-endpoint-url <galleryEndpointUrl>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "long": "--gallery-endpoint-url",
                  "description": "the template gallery endpoint"
                },
                {
                  "flags": "--active-directory-graph-resource-id <activeDirectoryGraphResourceId>",
                  "required": -38,
                  "optional": 0,
                  "bool": true,
                  "long": "--active-directory-graph-resource-id",
                  "description": "the Active Directory resource ID"
                },
                {
                  "flags": "--active-directory-graph-api-version <activeDirectoryGraphApiVersion>",
                  "required": -38,
                  "optional": 0,
                  "bool": true,
                  "long": "--active-directory-graph-api-version",
                  "description": "the Active Directory api version"
                },
                {
                  "flags": "--storage-endpoint-suffix <storageEndpointSuffix>",
                  "required": -27,
                  "optional": 0,
                  "bool": true,
                  "long": "--storage-endpoint-suffix",
                  "description": "the endpoint suffix for storage accounts"
                },
                {
                  "flags": "--key-vault-dns-suffix <keyVaultDnsSuffix>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "long": "--key-vault-dns-suffix",
                  "description": "the keyvault service dns suffix"
                },
                {
                  "flags": "--azure-data-lake-store-file-system-endpoint-suffix <azureDataLakeStoreFileSystemEndpointSuffix>",
                  "required": -53,
                  "optional": 0,
                  "bool": true,
                  "long": "--azure-data-lake-store-file-system-endpoint-suffix",
                  "description": "the data lake store filesystem service dns suffix"
                },
                {
                  "flags": "--active-directory-resource-id <activeDirectoryResourceId>",
                  "required": -32,
                  "optional": 0,
                  "bool": true,
                  "long": "--active-directory-resource-id",
                  "description": "The resource ID to obtain AD tokens for"
                }
              ]
            },
            {
              "name": "set",
              "description": "Update an environment",
              "fullName": "account env set",
              "usage": "[options] [environment]",
              "filePath": "commands/account.environment.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--environment <environment>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--environment",
                  "description": "the environment name"
                },
                {
                  "flags": "--portal-url <portalUrl>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--portal-url",
                  "description": "the management portal URL"
                },
                {
                  "flags": "--active-directory-resource-id <activeDirectoryResourceId>",
                  "required": -32,
                  "optional": 0,
                  "bool": true,
                  "long": "--active-directory-resource-id",
                  "description": "The resource ID to obtain AD tokens for"
                },
                {
                  "flags": "--management-endpoint-url <managementEndpointUrl>",
                  "required": -27,
                  "optional": 0,
                  "bool": true,
                  "long": "--management-endpoint-url",
                  "description": "the management service endpoint"
                },
                {
                  "flags": "--resource-manager-endpoint-url <resourceManagerEndpointUrl>",
                  "required": -33,
                  "optional": 0,
                  "bool": true,
                  "long": "--resource-manager-endpoint-url",
                  "description": "the resource management endpoint"
                },
                {
                  "flags": "--sql-management-endpoint-url <sqlManagementEndpointUrl>",
                  "required": -31,
                  "optional": 0,
                  "bool": true,
                  "long": "--sql-management-endpoint-url",
                  "description": "the sql server management endpoint for mobile commands"
                },
                {
                  "flags": "--sql-server-hostname-suffix <sqlServerHostnameSuffix>",
                  "required": -30,
                  "optional": 0,
                  "bool": true,
                  "long": "--sql-server-hostname-suffix",
                  "description": "the dns suffix for sql servers"
                },
                {
                  "flags": "--active-directory-endpoint-url <activeDirectoryEndpointUrl>",
                  "required": -33,
                  "optional": 0,
                  "bool": true,
                  "long": "--active-directory-endpoint-url",
                  "description": "the Active Directory login endpoint"
                },
                {
                  "flags": "--azure-data-lake-analytics-catalog-and-job-endpoint-suffix <azureDataLakeAnalyticsCatalogAndJobEndpointSuffix>",
                  "required": -61,
                  "optional": 0,
                  "bool": true,
                  "long": "--azure-data-lake-analytics-catalog-and-job-endpoint-suffix",
                  "description": "the data lake analytics job and catalog service dns suffix"
                },
                {
                  "flags": "--gallery-endpoint-url <galleryEndpointUrl>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "long": "--gallery-endpoint-url",
                  "description": "the template gallery endpoint"
                },
                {
                  "flags": "--active-directory-graph-resource-id <activeDirectoryGraphResourceId>",
                  "required": -38,
                  "optional": 0,
                  "bool": true,
                  "long": "--active-directory-graph-resource-id",
                  "description": "the Active Directory resource ID"
                },
                {
                  "flags": "--active-directory-graph-api-version <activeDirectoryGraphApiVersion>",
                  "required": -38,
                  "optional": 0,
                  "bool": true,
                  "long": "--active-directory-graph-api-version",
                  "description": "the Active Directory api version"
                },
                {
                  "flags": "--storage-endpoint-suffix <storageEndpointSuffix>",
                  "required": -27,
                  "optional": 0,
                  "bool": true,
                  "long": "--storage-endpoint-suffix",
                  "description": "the endpoint suffix for storage accounts"
                },
                {
                  "flags": "--key-vault-dns-suffix <keyVaultDnsSuffix>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "long": "--key-vault-dns-suffix",
                  "description": "the keyvault service dns suffix"
                },
                {
                  "flags": "--azure-data-lake-store-file-system-endpoint-suffix <azureDataLakeStoreFileSystemEndpointSuffix>",
                  "required": -53,
                  "optional": 0,
                  "bool": true,
                  "long": "--azure-data-lake-store-file-system-endpoint-suffix",
                  "description": "the data lake store filesystem service dns suffix"
                },
                {
                  "flags": "--publishing-profile-url <publishingProfileUrl>",
                  "required": -26,
                  "optional": 0,
                  "bool": true,
                  "long": "--publishing-profile-url",
                  "description": "the publish settings file URL"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete an environment",
              "fullName": "account env delete",
              "usage": "[options] [environment]",
              "filePath": "commands/account.environment.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--environment <environment>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--environment",
                  "description": "the environment name"
                }
              ]
            }
          ],
          "categories": {}
        }
      }
    },
    "batch": {
      "name": "batch",
      "description": "Commands to manage your Batch objects",
      "fullName": "batch",
      "usage": "[options]",
      "options": [],
      "commands": [],
      "categories": {
        "application": {
          "name": "application",
          "description": "Commands to manage your Batch Application",
          "fullName": "batch application",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Adds an application to the specified Batch account",
              "fullName": "batch application create",
              "usage": "[options] [resource-group] [account-name] [application-id]",
              "filePath": "commands/batch/batch.application.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--account-name <account-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--account-name",
                  "description": "the name of the Batch account"
                },
                {
                  "flags": "--application-id <application-id>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--application-id",
                  "description": "the id of the application"
                },
                {
                  "flags": "--allow-updates <allow-updates>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--allow-updates",
                  "description": "whether packages within the application may be overwritten using the same version string"
                },
                {
                  "flags": "--display-name <display-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--display-name",
                  "description": "the display name for the application"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "set",
              "description": "Updates an application to the specified Batch account",
              "fullName": "batch application set",
              "usage": "[options] [resource-group] [account-name] [application-id]",
              "filePath": "commands/batch/batch.application.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--account-name <account-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--account-name",
                  "description": "the name of the Batch account"
                },
                {
                  "flags": "--application-id <application-id>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--application-id",
                  "description": "the id of the application"
                },
                {
                  "flags": "--allow-updates <allow-updates>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--allow-updates",
                  "description": "whether packages within the application may be overwritten using the same version string"
                },
                {
                  "flags": "--display-name <display-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--display-name",
                  "description": "the display name for the application"
                },
                {
                  "flags": "--default-version <default-version>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "long": "--default-version",
                  "description": "the package to use if a client requests the application but does not specify a version"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Deletes an application",
              "fullName": "batch application delete",
              "usage": "[options] [resource-group] [account-name] [application-id]",
              "filePath": "commands/batch/batch.application.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--account-name <account-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--account-name",
                  "description": "the name of the Batch account"
                },
                {
                  "flags": "--application-id <application-id>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--application-id",
                  "description": "the id of the application"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "delete the specified application without confirmation"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show details of the Batch application",
              "fullName": "batch application show",
              "usage": "[options] [resource-group] [account-name] [application-id]",
              "filePath": "commands/batch/batch.application.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--account-name <account-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--account-name",
                  "description": "the name of the Batch account"
                },
                {
                  "flags": "--application-id <application-id>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--application-id",
                  "description": "the id of the application"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "list",
              "description": "Lists all of the applications in the specified account",
              "fullName": "batch application list",
              "usage": "[options] [resource-group] [account-name]",
              "filePath": "commands/batch/batch.application.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--account-name <account-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--account-name",
                  "description": "the name of the Batch account"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "list-summary",
              "description": "Lists all of the applications available in the specified account",
              "fullName": "batch application list-summary",
              "usage": "[options]",
              "filePath": "commands/batch/batch.application.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "show-summary",
              "description": "Show details of the application in the specified account",
              "fullName": "batch application show-summary",
              "usage": "[options] [application-id]",
              "filePath": "commands/batch/batch.application.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--application-id <application-id>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--application-id",
                  "description": "the id of the application"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            }
          ],
          "categories": {
            "package": {
              "name": "package",
              "description": "Commands to manage your Batch Application Package",
              "fullName": "batch application package",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Creates an application package record",
                  "fullName": "batch application package create",
                  "usage": "[options] [resource-group] [account-name] [application-id] [version] [package-file]",
                  "filePath": "commands/batch/batch.applicationPackage.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--account-name <account-name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--account-name",
                      "description": "the name of the Batch account"
                    },
                    {
                      "flags": "--application-id <application-id>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--application-id",
                      "description": "the id of the application"
                    },
                    {
                      "flags": "--version <version>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--version",
                      "description": "the version of the application"
                    },
                    {
                      "flags": "--package-file <package-file>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--package-file",
                      "description": "the application package in zip format"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the resource group name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Deletes an application package record",
                  "fullName": "batch application package delete",
                  "usage": "[options] [resource-group] [account-name] [application-id] [version]",
                  "filePath": "commands/batch/batch.applicationPackage.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--account-name <account-name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--account-name",
                      "description": "the name of the Batch account"
                    },
                    {
                      "flags": "--application-id <application-id>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--application-id",
                      "description": "the id of the application"
                    },
                    {
                      "flags": "--version <version>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--version",
                      "description": "the version of the application to delete"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "delete the specified application package without confirmation"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the resource group name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show details of the Batch application package",
                  "fullName": "batch application package show",
                  "usage": "[options] [resource-group] [account-name] [application-id] [version]",
                  "filePath": "commands/batch/batch.applicationPackage.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--account-name <account-name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--account-name",
                      "description": "the name of the Batch account"
                    },
                    {
                      "flags": "--application-id <application-id>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--application-id",
                      "description": "the id of the application"
                    },
                    {
                      "flags": "--version <version>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--version",
                      "description": "the version of the application to show"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the resource group name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                },
                {
                  "name": "activate",
                  "description": "Activate an application package",
                  "fullName": "batch application package activate",
                  "usage": "[options] [resource-group] [account-name] [application-id] [version] [format]",
                  "filePath": "commands/batch/batch.applicationPackage.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--account-name <account-name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--account-name",
                      "description": "the name of the Batch account"
                    },
                    {
                      "flags": "--application-id <application-id>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--application-id",
                      "description": "the id of the application"
                    },
                    {
                      "flags": "--version <version>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--version",
                      "description": "the version of the application to activate"
                    },
                    {
                      "flags": "--format <format>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--format",
                      "description": "the format of the application package binary file"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the resource group name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "account": {
          "name": "account",
          "description": "Commands to manage your Batch accounts",
          "fullName": "batch account",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List the Batch accounts associated with the subscription or resource group",
              "fullName": "batch account list",
              "usage": "[options]",
              "filePath": "commands/batch/batch.batchAccount.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show detailed information about the specified Batch account",
              "fullName": "batch account show",
              "usage": "[options] <name>",
              "filePath": "commands/batch/batch.batchAccount.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "create",
              "description": "Creates a new Batch account with the specified parameters",
              "fullName": "batch account create",
              "usage": "[options] <name>",
              "filePath": "commands/batch/batch.batchAccount.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "--tags <tags>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--tags",
                  "description": "the account tags. Tags are key=value pairs and separated with semicolon(;)"
                },
                {
                  "flags": "--autostorage-account-id <autostorageAccountId>",
                  "required": -26,
                  "optional": 0,
                  "bool": true,
                  "long": "--autostorage-account-id",
                  "description": "the resource id of the storage account to be used for auto storage"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "set",
              "description": "Updates the properties of an existing Batch account in the specified resource group",
              "fullName": "batch account set",
              "usage": "[options] <name>",
              "filePath": "commands/batch/batch.batchAccount.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--tags <tags>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--tags",
                  "description": "the account tags. Tags are key=value pairs and separated with semicolon(;)"
                },
                {
                  "flags": "--autostorage-account-id <autostorageAccountId>",
                  "required": -26,
                  "optional": 0,
                  "bool": true,
                  "long": "--autostorage-account-id",
                  "description": "the resource id of the storage account to be used for auto storage"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Deletes the specified Batch account",
              "fullName": "batch account delete",
              "usage": "[options] <name>",
              "filePath": "commands/batch/batch.batchAccount.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode, do not ask for delete confirmation"
                }
              ]
            },
            {
              "name": "sync-autostorage-keys",
              "description": "Synchronizes access keys for the auto storage account configured for the specified Batch account",
              "fullName": "batch account sync-autostorage-keys",
              "usage": "[options] <name>",
              "filePath": "commands/batch/batch.batchAccount.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            }
          ],
          "categories": {
            "keys": {
              "name": "keys",
              "description": "Commands to manage your Batch account keys",
              "fullName": "batch account keys",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "Gets the account keys for the given Batch account",
                  "fullName": "batch account keys list",
                  "usage": "[options] <name>",
                  "filePath": "commands/batch/batch.batchAccount.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the resource group name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                },
                {
                  "name": "renew",
                  "description": "Regenerates the specified account key for the given Batch account",
                  "fullName": "batch account keys renew",
                  "usage": "[options] <name>",
                  "filePath": "commands/batch/batch.batchAccount.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--primary",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--primary",
                      "description": "Update the primary key"
                    },
                    {
                      "flags": "--secondary",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--secondary",
                      "description": "Update the secondary key"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the resource group name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "certificate": {
          "name": "certificate",
          "description": "Commands to manage your Batch certificate",
          "fullName": "batch certificate",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Add a certificate",
              "fullName": "batch certificate create",
              "usage": "[options] [thumbprint] [cert-file]",
              "filePath": "commands/batch/batch.certificate.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-t, --thumbprint <thumbprint>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--thumbprint",
                  "description": "the certificate thumbprint"
                },
                {
                  "flags": "-f, --cert-file <cert-file>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--cert-file",
                  "description": "the certificate file: cer file or pfx file"
                },
                {
                  "flags": "--thumbprint-algorithm <thumbprint-algorithm>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "long": "--thumbprint-algorithm",
                  "description": "the certificate thumbprint algorithm"
                },
                {
                  "flags": "-p, --password <password>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--password",
                  "description": "the password to access the certificate's private key"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete the specified Batch certificate",
              "fullName": "batch certificate delete",
              "usage": "[options] [thumbprint]",
              "filePath": "commands/batch/batch.certificate.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-t, --thumbprint <thumbprint>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--thumbprint",
                  "description": "the certificate thumbprint"
                },
                {
                  "flags": "--thumbprint-algorithm <thumbprint-algorithm>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "long": "--thumbprint-algorithm",
                  "description": "the certificate thumbprint algorithm"
                },
                {
                  "flags": "--abort",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--abort",
                  "description": "cancel the deletion"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "delete the specified certificate without confirmation"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show details of the Batch certificate",
              "fullName": "batch certificate show",
              "usage": "[options] [thumbprint]",
              "filePath": "commands/batch/batch.certificate.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-t, --thumbprint <thumbprint>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--thumbprint",
                  "description": "the certificate thumbprint"
                },
                {
                  "flags": "--thumbprint-algorithm <thumbprint-algorithm>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "long": "--thumbprint-algorithm",
                  "description": "the certificate thumbprint algorithm"
                },
                {
                  "flags": "--select-clause <select-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--select-clause",
                  "description": "list of a subset of properties to select"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "list",
              "description": "List Batch certificates",
              "fullName": "batch certificate list",
              "usage": "[options]",
              "filePath": "commands/batch/batch.certificate.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--select-clause <select-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--select-clause",
                  "description": "list of a subset of properties to select"
                },
                {
                  "flags": "--filter-clause <filter-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--filter-clause",
                  "description": "an OData expression by which the results will be filtered"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            }
          ],
          "categories": {}
        },
        "task-file": {
          "name": "task-file",
          "description": "Commands to manage your Batch task files",
          "fullName": "batch task-file",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "delete",
              "description": "Deletes the specified task file from the compute node where the task ran",
              "fullName": "batch task-file delete",
              "usage": "[options] [job-id] [task-id] [file-name]",
              "filePath": "commands/batch/batch.file.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-j, --job-id <job-Id>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-j",
                  "long": "--job-id",
                  "description": "the id of the job that contains the task"
                },
                {
                  "flags": "-i, --task-id <task-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--task-id",
                  "description": "the id of the task whose file you want to delete"
                },
                {
                  "flags": "-f, --file-name <user-name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--file-name",
                  "description": "the path to the task file that you want to delete"
                },
                {
                  "flags": "-r, --recursive",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--recursive",
                  "description": "whether to delete children of a directory"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "delete file(s) without confirmation"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "download",
              "description": "Download a Batch task file",
              "fullName": "batch task-file download",
              "usage": "[options] [job-id] [task-id] [file-name] [destination]",
              "filePath": "commands/batch/batch.file.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-j, --job-id <job-Id>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-j",
                  "long": "--job-id",
                  "description": "the batch job id"
                },
                {
                  "flags": "-i, --task-id <task-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--task-id",
                  "description": "the batch task id"
                },
                {
                  "flags": "-f, --file-name <user-name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--file-name",
                  "description": "the path to the file that you want to download"
                },
                {
                  "flags": "-d, --destination <destination>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--destination",
                  "description": "path to the destination file or directory"
                },
                {
                  "flags": "--range <range>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--range",
                  "description": "the byte range to be retrieved, the default is to retrieve the entire file"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "overwrite the destination file without confirmation"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "show",
              "description": "Gets the properties of the specified task file",
              "fullName": "batch task-file show",
              "usage": "[options] [job-id] [task-id] [file-name]",
              "filePath": "commands/batch/batch.file.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-j, --job-id <job-Id>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-j",
                  "long": "--job-id",
                  "description": "the id of the job that contains the task"
                },
                {
                  "flags": "-i, --task-id <task-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--task-id",
                  "description": "the id of the task whose file you want to get the properties of"
                },
                {
                  "flags": "-f, --file-name <user-name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--file-name",
                  "description": "the path to the file that you want to get the properties of"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "list",
              "description": "Lists the files in a task's directory on its compute node",
              "fullName": "batch task-file list",
              "usage": "[options] [job-id] [task-id]",
              "filePath": "commands/batch/batch.file.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-j, --job-id <job-Id>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-j",
                  "long": "--job-id",
                  "description": "the id of the job that contains the task"
                },
                {
                  "flags": "-i, --task-id <task-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--task-id",
                  "description": "the id of the task whose files you want to list"
                },
                {
                  "flags": "-r, --recursive",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--recursive",
                  "description": "whether to list children of a directory"
                },
                {
                  "flags": "--filter-clause <filter-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--filter-clause",
                  "description": "an OData expression by which the results will be filtered"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            }
          ],
          "categories": {}
        },
        "node-file": {
          "name": "node-file",
          "description": "Commands to manage your Batch compute node files",
          "fullName": "batch node-file",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "delete",
              "description": "Deletes the specified file from the compute node",
              "fullName": "batch node-file delete",
              "usage": "[options] [pool-id] [node-id] [file-name]",
              "filePath": "commands/batch/batch.file.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-p, --pool-id <pool-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--pool-id",
                  "description": "the id of the pool that contains the compute node"
                },
                {
                  "flags": "-i, --node-id <node-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--node-id",
                  "description": "the id of the compute node from which you want to delete the file"
                },
                {
                  "flags": "-f, --file-name <user-name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--file-name",
                  "description": "the path to the file that you want to delete"
                },
                {
                  "flags": "-r, --recursive",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--recursive",
                  "description": "whether to delete children of a directory"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "delete file(s) without confirmation"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "download",
              "description": "Download a file from a Batch compute node",
              "fullName": "batch node-file download",
              "usage": "[options] [pool-id] [node-id] [file-name] [destination]",
              "filePath": "commands/batch/batch.file.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-p, --pool-id <pool-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--pool-id",
                  "description": "the id of the pool that contains the compute node"
                },
                {
                  "flags": "-i, --node-id <node-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--node-id",
                  "description": "the id of the compute node that contains the file"
                },
                {
                  "flags": "-f, --file-name <user-name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--file-name",
                  "description": "the path to the file that you want to download"
                },
                {
                  "flags": "-d, --destination <destination>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--destination",
                  "description": "path to the destination file or directory"
                },
                {
                  "flags": "--range <range>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--range",
                  "description": "the byte range to be retrieved, the default is to retrieve the entire file"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "overwrite the destination file without confirmation"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "show",
              "description": "Get the properties of the specified compute node file",
              "fullName": "batch node-file show",
              "usage": "[options] [pool-id] [node-id] [file-name]",
              "filePath": "commands/batch/batch.file.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-p, --pool-id <pool-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--pool-id",
                  "description": "the id of the pool that contains the compute node"
                },
                {
                  "flags": "-i, --node-id <node-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--node-id",
                  "description": "the id of the compute node that contains the file"
                },
                {
                  "flags": "-f, --file-name <user-name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--file-name",
                  "description": "the path to the file that you want to get the properties of"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "list",
              "description": "Lists all of the files in task directories on the specified compute node",
              "fullName": "batch node-file list",
              "usage": "[options] [pool-id] [node-id]",
              "filePath": "commands/batch/batch.file.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-p, --pool-id <pool-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--pool-id",
                  "description": "the id of the pool that contains the compute node"
                },
                {
                  "flags": "-i, --node-id <node-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--node-id",
                  "description": "the id of the compute node whose files you want to list"
                },
                {
                  "flags": "-r, --recursive",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--recursive",
                  "description": "whether to list children of a directory"
                },
                {
                  "flags": "--filter-clause <filter-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--filter-clause",
                  "description": "an OData expression by which the results will be filtered"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            }
          ],
          "categories": {}
        },
        "job": {
          "name": "job",
          "description": "Commands to manage your Batch jobs",
          "fullName": "batch job",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Adds a job to the specified account",
              "fullName": "batch job create",
              "usage": "[options] [json-file]",
              "filePath": "commands/batch/batch.job.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-f, --json-file <json-file>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--json-file",
                  "description": "the file containing the job object to create in JSON format; if this parameter is specified, all other job parameters are ignored."
                },
                {
                  "flags": "-i, --id <jobId>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--id",
                  "description": "the Batch job id"
                },
                {
                  "flags": "-p, --pool-id <poolId>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--pool-id",
                  "description": "the id of an existing pool; all the tasks of the job will run on the specified pool"
                },
                {
                  "flags": "--metadata <--metadata>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--metadata",
                  "description": "the semicolon separated list of name-value pairs associated with the job as metadata, ex: name1=value1;name2=value2"
                },
                {
                  "flags": "--priority <priority>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--priority",
                  "description": "the priority of the job, ranging from -1000 to 1000, with -1000 being the lowest priority and 1000 being the highest priority; the default value is 0."
                },
                {
                  "flags": "--max-wall-clock-time <max-wall-clock-time>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--max-wall-clock-time",
                  "description": "the maximum elapsed time that a job may run, in ISO 8601 duration formation"
                },
                {
                  "flags": "--max-task-retry-count <max-task-retry-count>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "long": "--max-task-retry-count",
                  "description": "the maximum number of times each task may be retried"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "list",
              "description": "Lists all of the jobs in the specified account",
              "fullName": "batch job list",
              "usage": "[options]",
              "filePath": "commands/batch/batch.job.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-i, --job-schedule-id [jobScheduleId]",
                  "required": 0,
                  "optional": -23,
                  "bool": true,
                  "short": "-i",
                  "long": "--job-schedule-id",
                  "description": "the id of the job schedule from which you want to get a list of jobs"
                },
                {
                  "flags": "--select-clause <select-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--select-clause",
                  "description": "list of a subset of properties to select"
                },
                {
                  "flags": "--filter-clause <filter-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--filter-clause",
                  "description": "an OData expression by which the results will be filtered"
                },
                {
                  "flags": "--expand-clause <expand-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--expand-clause",
                  "description": "list of related entities by which the results can be expanded"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show information about the specified job",
              "fullName": "batch job show",
              "usage": "[options] [jobId]",
              "filePath": "commands/batch/batch.job.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-i, --id <jobId>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--id",
                  "description": "the id of the job"
                },
                {
                  "flags": "--select-clause <select-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--select-clause",
                  "description": "list of a subset of properties to select"
                },
                {
                  "flags": "--expand-clause <expand-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--expand-clause",
                  "description": "list of related entities by which the results can be expanded"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete the specified job",
              "fullName": "batch job delete",
              "usage": "[options] [jobId]",
              "filePath": "commands/batch/batch.job.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-i, --id <jobId>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--id",
                  "description": "the id of the job to delete"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "remove the specified job without confirmation"
                },
                {
                  "flags": "--if-match <if-match>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-match",
                  "description": "only perform if resource's ETag is an exact match to the specified value"
                },
                {
                  "flags": "--if-none-match <if-none-match>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-none-match",
                  "description": "only perform if resource's ETag does not match the specified value"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "set",
              "description": "Patch/Update the properties of a job",
              "fullName": "batch job set",
              "usage": "[options] [jobId] [json-file]",
              "filePath": "commands/batch/batch.job.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-i, --id <jobId>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--id",
                  "description": "the id of the job whose properties you want to patch/update"
                },
                {
                  "flags": "-p, --pool-id <poolId>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--pool-id",
                  "description": "the id of an existing pool; all the tasks of the job will run on the specified pool"
                },
                {
                  "flags": "--metadata <metadata>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--metadata",
                  "description": "the semicolon separated list of name-value pairs associated with the job as metadata, ex: name1=value1;name2=value2"
                },
                {
                  "flags": "--priority <priority>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--priority",
                  "description": "the priority of the job, ranging from -1000 to 1000, with -1000 being the lowest priority and 1000 being the highest priority; the default value is 0."
                },
                {
                  "flags": "--max-wall-clock-time <max-wall-clock-time>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--max-wall-clock-time",
                  "description": "the maximum elapsed time that a job may run, in ISO 8601 duration format"
                },
                {
                  "flags": "--max-task-retry-count <max-task-retry-count>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "long": "--max-task-retry-count",
                  "description": "the maximum number of times each task may be retried"
                },
                {
                  "flags": "-f, --json-file <json-file>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--json-file",
                  "description": "the file containing the job properties to patch/update in JSON format; if this parameter is specified, all other job parameters are ignored."
                },
                {
                  "flags": "-r, --replace",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--replace",
                  "description": "uses update instead of patch"
                },
                {
                  "flags": "--if-match <if-match>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-match",
                  "description": "only perform if resource's ETag is an exact match to the specified value"
                },
                {
                  "flags": "--if-none-match <if-none-match>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-none-match",
                  "description": "only perform if resource's ETag does not match the specified value"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "enable",
              "description": "Enables the specified job, allowing new tasks to run",
              "fullName": "batch job enable",
              "usage": "[options] <jobId>",
              "filePath": "commands/batch/batch.job.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--if-match <if-match>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-match",
                  "description": "only perform if resource's ETag is an exact match to the specified value"
                },
                {
                  "flags": "--if-none-match <if-none-match>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-none-match",
                  "description": "only perform if resource's ETag does not match the specified value"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "disable",
              "description": "Disables the specified job.  Disabled jobs do not run new tasks, but may be re-enabled later.",
              "fullName": "batch job disable",
              "usage": "[options] <jobId>",
              "filePath": "commands/batch/batch.job.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-o, --disable-option <disableOption>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--disable-option",
                  "description": "specifies what to do with active tasks during a disable job operation, available options include \"requeue\", \"terminate\", and \"wait\""
                },
                {
                  "flags": "--if-match <if-match>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-match",
                  "description": "only perform if resource's ETag is an exact match to the specified value"
                },
                {
                  "flags": "--if-none-match <if-none-match>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-none-match",
                  "description": "only perform if resource's ETag does not match the specified value"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "stop",
              "description": "Terminates the specified job, marking it as completed",
              "fullName": "batch job stop",
              "usage": "[options] <jobId>",
              "filePath": "commands/batch/batch.job.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-r, --reason [reason]",
                  "required": 0,
                  "optional": -14,
                  "bool": true,
                  "short": "-r",
                  "long": "--reason",
                  "description": "the text you want to appear as the job's terminate reason"
                },
                {
                  "flags": "--if-match <if-match>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-match",
                  "description": "only perform if resource's ETag is an exact match to the specified value"
                },
                {
                  "flags": "--if-none-match <if-none-match>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-none-match",
                  "description": "only perform if resource's ETag does not match the specified value"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            }
          ],
          "categories": {
            "prep-release-status": {
              "name": "prep-release-status",
              "description": "Commands to manage the status of your job preparation and release tasks",
              "fullName": "batch job prep-release-status",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "Lists the execution status of the job preparation and job release task for the specified job across the compute nodes where the job has run",
                  "fullName": "batch job prep-release-status list",
                  "usage": "[options] <jobId>",
                  "filePath": "commands/batch/batch.job.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--select-clause <select-clause>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--select-clause",
                      "description": "list of a subset of properties to select"
                    },
                    {
                      "flags": "--filter-clause <filter-clause>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--filter-clause",
                      "description": "an OData expression by which the results will be filtered"
                    },
                    {
                      "flags": "-a, --account-name <account-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the Batch account name"
                    },
                    {
                      "flags": "-k, --account-key <account-key>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the Batch account key"
                    },
                    {
                      "flags": "-u, --account-endpoint <account-endpoint>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--account-endpoint",
                      "description": "the Batch account URL"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "job-schedule": {
          "name": "job-schedule",
          "description": "Commands to manage your Batch job schedules",
          "fullName": "batch job-schedule",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Adds a job schedule to the specified account",
              "fullName": "batch job-schedule create",
              "usage": "[options] [json-file]",
              "filePath": "commands/batch/batch.jobSchedule.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-f, --json-file <json-file>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--json-file",
                  "description": "the file containing the job schedule object to create in JSON format; if this parameter is specified, all other job schedule parameters are ignored."
                },
                {
                  "flags": "-i, --id <jobScheduleId>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--id",
                  "description": "the Batch job schedule id"
                },
                {
                  "flags": "-p, --pool-id <poolId>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--pool-id",
                  "description": "the id of an existing pool; all the tasks of jobs created under this schedule will run on the specified pool"
                },
                {
                  "flags": "--priority <priority>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--priority",
                  "description": "the priority of the jobs created under this schedule, ranging from -1000 to 1000, with -1000 being the lowest priority and 1000 being the highest priority; the default value is 0."
                },
                {
                  "flags": "--max-wall-clock-time <max-wall-clock-time>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--max-wall-clock-time",
                  "description": "the maximum elapsed time that a job created under this schedule may run, in ISO 8601 duration formation"
                },
                {
                  "flags": "--max-task-retry-count <max-task-retry-count>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "long": "--max-task-retry-count",
                  "description": "the maximum number of times each task may be retried"
                },
                {
                  "flags": "--do-not-run-until <do-not-run-until>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "long": "--do-not-run-until",
                  "description": "the earliest time at which any job may be created under this job schedule; if you do not specify a time, the schedule becomes ready to create jobs immediately."
                },
                {
                  "flags": "--do-not-run-after <do-not-run-after>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "long": "--do-not-run-after",
                  "description": "the time after which no job will be created under this job schedule; if you do not specify a time, and you are creating a recurring job schedule, the job schedule will remain active until you explicitly terminate it."
                },
                {
                  "flags": "--start-window <start-window>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--start-window",
                  "description": "the time interval, starting from the time at which the schedule indicates a job should be created, within which a job must be created, specified in ISO 8601 duration format."
                },
                {
                  "flags": "--recurrence-interval <recurrence-interval>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--recurrence-interval",
                  "description": "the time interval between the start times of two successive jobs under the job schedule, specified in ISO 8601 duration format; the default is that the schedule does not recur."
                },
                {
                  "flags": "--metadata <--metadata>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--metadata",
                  "description": "the semicolon separated list of name-value pairs associated with the job schedule as metadata, ex: name1=value1;name2=value2"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "list",
              "description": "Lists all of the job schedules in the specified account",
              "fullName": "batch job-schedule list",
              "usage": "[options]",
              "filePath": "commands/batch/batch.jobSchedule.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--select-clause <select-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--select-clause",
                  "description": "list of a subset of properties to select"
                },
                {
                  "flags": "--filter-clause <filter-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--filter-clause",
                  "description": "an OData expression by which the results will be filtered"
                },
                {
                  "flags": "--expand-clause <expand-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--expand-clause",
                  "description": "list of related entities by which the results can be expanded"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show information about the specified job schedule",
              "fullName": "batch job-schedule show",
              "usage": "[options] [jobScheduleId]",
              "filePath": "commands/batch/batch.jobSchedule.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-i, --id <jobScheduleId>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--id",
                  "description": "the id of the job schedule to get"
                },
                {
                  "flags": "--select-clause <select-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--select-clause",
                  "description": "list of a subset of properties to select"
                },
                {
                  "flags": "--expand-clause <expand-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--expand-clause",
                  "description": "list of related entities by which the results can be expanded"
                },
                {
                  "flags": "--if-match <if-match>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-match",
                  "description": "only perform if resource's ETag is an exact match to the specified value"
                },
                {
                  "flags": "--if-none-match <if-none-match>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-none-match",
                  "description": "only perform if resource's ETag does not match the specified value"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Deletes a job schedule from the specified account",
              "fullName": "batch job-schedule delete",
              "usage": "[options] [jobScheduleId]",
              "filePath": "commands/batch/batch.jobSchedule.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-i, --id <jobScheduleId>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--id",
                  "description": "the id of the job schedule to delete"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "remove the specified job schedule without confirmation"
                },
                {
                  "flags": "--if-match <if-match>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-match",
                  "description": "only perform if resource's ETag is an exact match to the specified value"
                },
                {
                  "flags": "--if-none-match <if-none-match>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-none-match",
                  "description": "only perform if resource's ETag does not match the specified value"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "set",
              "description": "Patch/Update the properties of the specified job schedule",
              "fullName": "batch job-schedule set",
              "usage": "[options] [jobScheduleId] [json-file]",
              "filePath": "commands/batch/batch.jobSchedule.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-i, --id <jobScheduleId>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--id",
                  "description": "the id of the job schedule to patch/update"
                },
                {
                  "flags": "-p, --pool-id <poolId>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--pool-id",
                  "description": "the id of an existing pool; all the tasks of jobs created under this schedule will run on the specified pool"
                },
                {
                  "flags": "--priority <priority>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--priority",
                  "description": "the priority of the jobs created under this schedule, ranging from -1000 to 1000, with -1000 being the lowest priority and 1000 being the highest priority; the default value is 0."
                },
                {
                  "flags": "--max-wall-clock-time <max-wall-clock-time>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--max-wall-clock-time",
                  "description": "the maximum elapsed time that a job created under this schedule may run, in ISO 8601 duration formation"
                },
                {
                  "flags": "--max-task-retry-count <max-task-retry-count>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "long": "--max-task-retry-count",
                  "description": "the maximum number of times each task may be retried"
                },
                {
                  "flags": "--do-not-run-until <do-not-run-until>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "long": "--do-not-run-until",
                  "description": "the earliest time at which any job may be created under this job schedule; if you do not specify a time, the schedule becomes ready to create jobs immediately."
                },
                {
                  "flags": "--do-not-run-after <do-not-run-after>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "long": "--do-not-run-after",
                  "description": "the time after which no job will be created under this job schedule; if you do not specify a time, and you are creating a recurring job schedule, the job schedule will remain active until you explicitly terminate it."
                },
                {
                  "flags": "--start-window <start-window>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--start-window",
                  "description": "the time interval, starting from the time at which the schedule indicates a job should be created, within which a job must be created, specified in ISO 8601 duration format."
                },
                {
                  "flags": "--recurrence-interval <recurrence-interval>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--recurrence-interval",
                  "description": "the time interval between the start times of two successive jobs under the job schedule, specified in ISO 8601 duration format; the default is that the schedule does not recur."
                },
                {
                  "flags": "-f, --json-file <json-file>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--json-file",
                  "description": "the file containing the job schedule properties to patch/update in JSON format; if this parameter is specified, all other job schedule parameters are ignored."
                },
                {
                  "flags": "-r, --replace",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--replace",
                  "description": "uses update instead of patch"
                },
                {
                  "flags": "--if-match <if-match>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-match",
                  "description": "only perform if resource's ETag is an exact match to the specified value"
                },
                {
                  "flags": "--if-none-match <if-none-match>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-none-match",
                  "description": "only perform if resource's ETag does not match the specified value"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "enable",
              "description": "Enables the specified job schedule, allowing jobs to be created according to its schedule",
              "fullName": "batch job-schedule enable",
              "usage": "[options] <jobScheduleId>",
              "filePath": "commands/batch/batch.jobSchedule.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--if-match <if-match>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-match",
                  "description": "only perform if resource's ETag is an exact match to the specified value"
                },
                {
                  "flags": "--if-none-match <if-none-match>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-none-match",
                  "description": "only perform if resource's ETag does not match the specified value"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "disable",
              "description": "Disables the specified job schedule. Disabled schedules do not create new jobs, but may be re-enabled later.",
              "fullName": "batch job-schedule disable",
              "usage": "[options] <jobScheduleId>",
              "filePath": "commands/batch/batch.jobSchedule.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--if-match <if-match>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-match",
                  "description": "only perform if resource's ETag is an exact match to the specified value"
                },
                {
                  "flags": "--if-none-match <if-none-match>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-none-match",
                  "description": "only perform if resource's ETag does not match the specified value"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "stop",
              "description": "Terminates the specified job schedule",
              "fullName": "batch job-schedule stop",
              "usage": "[options] <jobScheduleId>",
              "filePath": "commands/batch/batch.jobSchedule.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--if-match <if-match>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-match",
                  "description": "only perform if resource's ETag is an exact match to the specified value"
                },
                {
                  "flags": "--if-none-match <if-none-match>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-none-match",
                  "description": "only perform if resource's ETag does not match the specified value"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            }
          ],
          "categories": {}
        },
        "location": {
          "name": "location",
          "description": "Commands to manage Batch service options for a subscription at the region level",
          "fullName": "batch location",
          "usage": "[options]",
          "options": [],
          "commands": [],
          "categories": {
            "quotas": {
              "name": "quotas",
              "description": "Commands to manage Batch service quotas at the region level",
              "fullName": "batch location quotas",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Get the Batch service quotas for the specified subscription at the given region",
                  "fullName": "batch location quotas show",
                  "usage": "[options] <location>",
                  "filePath": "commands/batch/batch.location.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "node": {
          "name": "node",
          "description": "Commands to manage your Batch compute nodes",
          "fullName": "batch node",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "show",
              "description": "Show information about the specified compute node",
              "fullName": "batch node show",
              "usage": "[options] [pool-id] [node-id]",
              "filePath": "commands/batch/batch.node.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-p, --pool-id <pool-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--pool-id",
                  "description": "the id of the pool that contains the compute node"
                },
                {
                  "flags": "-i, --node-id <node-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--node-id",
                  "description": "the id of the compute node that you want to get information about"
                },
                {
                  "flags": "--select-clause <select-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--select-clause",
                  "description": "list of a subset of properties to select"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "list",
              "description": "Lists the compute nodes in the specified pool",
              "fullName": "batch node list",
              "usage": "[options] [pool-id]",
              "filePath": "commands/batch/batch.node.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-p, --pool-id <pool-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--pool-id",
                  "description": "the id of the pool from which you want to list nodes"
                },
                {
                  "flags": "--select-clause <select-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--select-clause",
                  "description": "list of a subset of properties to select"
                },
                {
                  "flags": "--filter-clause <filter-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--filter-clause",
                  "description": "an OData expression by which the results will be filtered"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "reboot",
              "description": "Restarts the specified compute node",
              "fullName": "batch node reboot",
              "usage": "[options] [pool-id] [node-id]",
              "filePath": "commands/batch/batch.node.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-p, --pool-id <pool-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--pool-id",
                  "description": "the id of the pool that contains the compute node"
                },
                {
                  "flags": "-i, --node-id <node-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--node-id",
                  "description": "the id of the compute node that you want to restart"
                },
                {
                  "flags": "-o, --reboot-option <reboot-option>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--reboot-option",
                  "description": "when to reboot the compute node and what to do with currently running tasks"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "reboot the specified compute node without confirmation"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "reimage",
              "description": "Reinstalls the operating system on the specified compute node",
              "fullName": "batch node reimage",
              "usage": "[options] [pool-id] [node-id]",
              "filePath": "commands/batch/batch.node.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-p, --pool-id <pool-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--pool-id",
                  "description": "the id of the pool that contains the compute node"
                },
                {
                  "flags": "-i, --node-id <node-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--node-id",
                  "description": "the id of the compute node that you want to reimage"
                },
                {
                  "flags": "-o, --reimage-option <reimage-option>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--reimage-option",
                  "description": "when to reimage the compute node and what to do with currently running tasks"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "reimage the specified compute node without confirmation"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Remove nodes from the Batch pool",
              "fullName": "batch node delete",
              "usage": "[options] [pool-id] [node-list]",
              "filePath": "commands/batch/batch.pool.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-i, --id <pool-id>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--id",
                  "description": "the Batch pool id"
                },
                {
                  "flags": "-l, --node-list <node-list>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--node-list",
                  "description": "the list of node ids"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "remove nodes from the specified Batch pool without confirmation"
                },
                {
                  "flags": "--resize-timeout <resize-timeout>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--resize-timeout",
                  "description": "the timeout for removal of compute nodes from the pool, in ISO 8601 duration format"
                },
                {
                  "flags": "-o, --deallocate-option <deallocate-option>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--deallocate-option",
                  "description": "sets when nodes may be removed from the pool"
                },
                {
                  "flags": "--if-match <if-match>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-match",
                  "description": "only perform if resource's ETag is an exact match to the specified value"
                },
                {
                  "flags": "--if-none-match <if-none-match>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-none-match",
                  "description": "only perform if resource's ETag does not match the specified value"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            }
          ],
          "categories": {
            "remote-login-settings": {
              "name": "remote-login-settings",
              "description": "The remote login settings for a Batch compute node",
              "fullName": "batch node remote-login-settings",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Gets the remote login settings for the specified node",
                  "fullName": "batch node remote-login-settings show",
                  "usage": "[options] [pool-id] [node-id]",
                  "filePath": "commands/batch/batch.node.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-p, --pool-id <pool-Id>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--pool-id",
                      "description": "the id of the pool that contains the compute node"
                    },
                    {
                      "flags": "-i, --node-id <node-Id>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--node-id",
                      "description": "the id of the compute node for which you want to get the remote login settings"
                    },
                    {
                      "flags": "-a, --account-name <account-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the Batch account name"
                    },
                    {
                      "flags": "-k, --account-key <account-key>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the Batch account key"
                    },
                    {
                      "flags": "-u, --account-endpoint <account-endpoint>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--account-endpoint",
                      "description": "the Batch account URL"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "remote-desktop": {
              "name": "remote-desktop",
              "description": "The remote desktop protocol for a Batch compute node",
              "fullName": "batch node remote-desktop",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Gets the Remote Desktop Protocol file for the specified compute node",
                  "fullName": "batch node remote-desktop show",
                  "usage": "[options] [pool-id] [node-id] [rdp-file]",
                  "filePath": "commands/batch/batch.node.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-p, --pool-id <pool-Id>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--pool-id",
                      "description": "the id of the pool that contains the compute node"
                    },
                    {
                      "flags": "-i, --node-id <node-Id>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--node-id",
                      "description": "the id of the compute node for which you want to get the Remote Desktop Protocol file"
                    },
                    {
                      "flags": "-f, --rdp-file <rdp-file>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--rdp-file",
                      "description": "the path where you would like to save the Remote Desktop Protocol file"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "overwrite the destination Remote Desktop Protocol file without confirmation"
                    },
                    {
                      "flags": "-a, --account-name <account-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the Batch account name"
                    },
                    {
                      "flags": "-k, --account-key <account-key>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the Batch account key"
                    },
                    {
                      "flags": "-u, --account-endpoint <account-endpoint>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--account-endpoint",
                      "description": "the Batch account URL"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "scheduling": {
              "name": "scheduling",
              "description": "The scheduling property for a Batch compute node",
              "fullName": "batch node scheduling",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "disable",
                  "description": "Disable scheduling on the Batch compute node",
                  "fullName": "batch node scheduling disable",
                  "usage": "[options] [pool-id] [node-id]",
                  "filePath": "commands/batch/batch.node.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-p, --pool-id <pool-Id>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--pool-id",
                      "description": "the id of the pool that contains the compute node"
                    },
                    {
                      "flags": "-i, --node-id <node-Id>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--node-id",
                      "description": "the id of the compute node that you want to disable scheduling"
                    },
                    {
                      "flags": "-o, --disable-option <disable-option>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--disable-option",
                      "description": "option of what to do with currently running tasks when to disable scheduling on the compute node"
                    },
                    {
                      "flags": "-a, --account-name <account-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the Batch account name"
                    },
                    {
                      "flags": "-k, --account-key <account-key>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the Batch account key"
                    },
                    {
                      "flags": "-u, --account-endpoint <account-endpoint>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--account-endpoint",
                      "description": "the Batch account URL"
                    }
                  ]
                },
                {
                  "name": "enable",
                  "description": "Enable scheduling on the Batch compute node",
                  "fullName": "batch node scheduling enable",
                  "usage": "[options] [pool-id] [node-id]",
                  "filePath": "commands/batch/batch.node.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-p, --pool-id <pool-Id>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--pool-id",
                      "description": "the id of the pool that contains the compute node"
                    },
                    {
                      "flags": "-i, --node-id <node-Id>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--node-id",
                      "description": "the id of the compute node that you want to enable scheduling"
                    },
                    {
                      "flags": "-a, --account-name <account-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the Batch account name"
                    },
                    {
                      "flags": "-k, --account-key <account-key>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the Batch account key"
                    },
                    {
                      "flags": "-u, --account-endpoint <account-endpoint>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--account-endpoint",
                      "description": "the Batch account URL"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "node-user": {
          "name": "node-user",
          "description": "Commands to manage your Batch compute node users",
          "fullName": "batch node-user",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Adds a user account to the specified compute node",
              "fullName": "batch node-user create",
              "usage": "[options] [pool-id] [node-id] [user-name]",
              "filePath": "commands/batch/batch.node.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-p, --pool-id <pool-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--pool-id",
                  "description": "the id of the pool that contains the compute node"
                },
                {
                  "flags": "-i, --node-id <node-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--node-id",
                  "description": "the id of the machine on which you want to create a user account"
                },
                {
                  "flags": "-n, --user-name <user-name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--user-name",
                  "description": "the name of the user account to be created"
                },
                {
                  "flags": "-w, --user-password [user-password]",
                  "required": 0,
                  "optional": -21,
                  "bool": true,
                  "short": "-w",
                  "long": "--user-password",
                  "description": "the password of the user account"
                },
                {
                  "flags": "--ssh-public-key [ssh-public-key]",
                  "required": 0,
                  "optional": -18,
                  "bool": true,
                  "long": "--ssh-public-key",
                  "description": "the ssh public key that can be used for remote login to the compute node; can only be specified for Linux nodes"
                },
                {
                  "flags": "--admin",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--admin",
                  "description": "whether the account should be an administrator on the compute node"
                },
                {
                  "flags": "--expiry-time [expiry-time]",
                  "required": 0,
                  "optional": -15,
                  "bool": true,
                  "long": "--expiry-time",
                  "description": "the time at which the account should expire"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Deletes a user account from the specified compute node",
              "fullName": "batch node-user delete",
              "usage": "[options] [pool-id] [node-id] [user-name]",
              "filePath": "commands/batch/batch.node.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-p, --pool-id <pool-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--pool-id",
                  "description": "the id of the pool that contains the compute node"
                },
                {
                  "flags": "-i, --node-id <node-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--node-id",
                  "description": "the id of the machine on which you want to delete a user account"
                },
                {
                  "flags": "-n, --user-name <user-name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--user-name",
                  "description": "the name of user account to delete"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "remove the specified user without confirmation"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "set",
              "description": "Update the properties of a user account on the specified compute node",
              "fullName": "batch node-user set",
              "usage": "[options] [pool-id] [node-id] [user-name]",
              "filePath": "commands/batch/batch.node.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-p, --pool-id <pool-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--pool-id",
                  "description": "the id of the pool that contains the compute node"
                },
                {
                  "flags": "-i, --node-id <node-Id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--node-id",
                  "description": "the id of the machine on which you want to update a user account"
                },
                {
                  "flags": "-n, --user-name <user-name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--user-name",
                  "description": "the name of the user account to update"
                },
                {
                  "flags": "-w, --user-password [user-password]",
                  "required": 0,
                  "optional": -21,
                  "bool": true,
                  "short": "-w",
                  "long": "--user-password",
                  "description": "the password of the user account"
                },
                {
                  "flags": "--ssh-public-key [ssh-public-key]",
                  "required": 0,
                  "optional": -18,
                  "bool": true,
                  "long": "--ssh-public-key",
                  "description": "the ssh public key that can be used for remote login to the compute node; can only be specified for Linux nodes"
                },
                {
                  "flags": "--expiry-time [expiry-time]",
                  "required": 0,
                  "optional": -15,
                  "bool": true,
                  "long": "--expiry-time",
                  "description": "the time at which the account should expire"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            }
          ],
          "categories": {}
        },
        "pool": {
          "name": "pool",
          "description": "Commands to manage your Batch pools",
          "fullName": "batch pool",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a Batch pool",
              "fullName": "batch pool create",
              "usage": "[options] [json-file]",
              "filePath": "commands/batch/batch.pool.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-f, --json-file <json-file>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--json-file",
                  "description": "the file containing the pool object to create in JSON format, if this parameter is specified, all other pool parameters are ignored"
                },
                {
                  "flags": "-i, --id <pool-id>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--id",
                  "description": "the Batch pool id"
                },
                {
                  "flags": "-S, --vm-size <vm-size>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-S",
                  "long": "--vm-size",
                  "description": "the size of virtual machines in the pool, ex: small, Standard_D14"
                },
                {
                  "flags": "-t, --target-dedicated <target-dedicated>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--target-dedicated",
                  "description": "the desired number of compute nodes in the pool"
                },
                {
                  "flags": "-F, --autoscale-formula <autoscale-formula>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-F",
                  "long": "--autoscale-formula",
                  "description": "the formula for the desired number of compute nodes in the pool, see https://azure.microsoft.com/en-us/documentation/articles/batch-automatic-scaling/ for more detail"
                },
                {
                  "flags": "-o, --os-family <os-family>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--os-family",
                  "description": "the Azure Guest OS family to be installed on the virtual machines in the pool, this parameter cannot be used with the --image-publisher, --image-offer, --image-sku and --node-agent-id parameters"
                },
                {
                  "flags": "-p, --image-publisher <image-publisher>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--image-publisher",
                  "description": "the publisher of the Azure Virtual Machines Marketplace image, ex: Canonical or MicrosoftWindowsServer"
                },
                {
                  "flags": "-O, --image-offer <image-offer>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-O",
                  "long": "--image-offer",
                  "description": "the offer type of the Azure Virtual Machines Marketplace image, ex: UbuntuServer or WindowsServer"
                },
                {
                  "flags": "-K, --image-sku <image-sku>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-K",
                  "long": "--image-sku",
                  "description": "the SKU of the Azure Virtual Machines Marketplace image, ex: 14.04.0-LTS or 2012-R2-Datacenter"
                },
                {
                  "flags": "-n, --node-agent-id <node-agent-id>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--node-agent-id",
                  "description": "the SKU of Batch Node Agent to be provisioned on the compute node"
                },
                {
                  "flags": "--resize-timeout <resize-timeout>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--resize-timeout",
                  "description": "the timeout for allocation of compute nodes to the pool, in ISO 8601 duration formation"
                },
                {
                  "flags": "-c, --start-task-cmd <start-task-cmd>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--start-task-cmd",
                  "description": "the command line of the start task"
                },
                {
                  "flags": "--certificate-ref <certificate-ref>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "long": "--certificate-ref",
                  "description": "the semicolon separated list of thumbprints specifying the certificates to be installed on each compute node in the pool"
                },
                {
                  "flags": "--app-package-ref <app-package-ref>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "long": "--app-package-ref",
                  "description": "the semicolon separated list of ids specifying the application packages to be installed on each compute node in the pool"
                },
                {
                  "flags": "--metadata <metadata>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--metadata",
                  "description": "the semicolon separated list of name-value pairs associated with the pool as metadata, ex: name1=value1;name2=value"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "list",
              "description": "List Batch pools",
              "fullName": "batch pool list",
              "usage": "[options]",
              "filePath": "commands/batch/batch.pool.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--select-clause <select-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--select-clause",
                  "description": "list of a subset of properties to select"
                },
                {
                  "flags": "--filter-clause <filter-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--filter-clause",
                  "description": "an OData expression by which the results will be filtered"
                },
                {
                  "flags": "--expand-clause <expand-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--expand-clause",
                  "description": "list of related entities by which the results can be expanded"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show information about the specified Batch pool",
              "fullName": "batch pool show",
              "usage": "[options] [pool-id]",
              "filePath": "commands/batch/batch.pool.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-i, --id <pool-id>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--id",
                  "description": "the Batch pool id"
                },
                {
                  "flags": "--select-clause <select-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--select-clause",
                  "description": "list of a subset of properties to select"
                },
                {
                  "flags": "--expand-clause <expand-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--expand-clause",
                  "description": "list of related entities by which the results can be expanded"
                },
                {
                  "flags": "--if-match <if-match>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-match",
                  "description": "only perform if resource's ETag is an exact match to the specified value"
                },
                {
                  "flags": "--if-none-match <if-none-match>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-none-match",
                  "description": "only perform if resource's ETag does not match the specified value"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete the specified Batch pool",
              "fullName": "batch pool delete",
              "usage": "[options] [pool-id]",
              "filePath": "commands/batch/batch.pool.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-i, --id <pool-Id>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--id",
                  "description": "the Batch pool id"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "remove the specified Batch pool without confirmation"
                },
                {
                  "flags": "--if-match <if-match>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-match",
                  "description": "only perform if resource's ETag is an exact match to the specified value"
                },
                {
                  "flags": "--if-none-match <if-none-match>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-none-match",
                  "description": "only perform if resource's ETag does not match the specified value"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "set",
              "description": "Patch/Update the properties of the specified Batch pool",
              "fullName": "batch pool set",
              "usage": "[options] [pool-id] [json-file]",
              "filePath": "commands/batch/batch.pool.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-i, --id <pool-id>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--id",
                  "description": "the Batch pool id"
                },
                {
                  "flags": "-f, --json-file <json-file>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--json-file",
                  "description": "the file containing the patch/update pool properties to apply in JSON format, if this parameter is specified, all other pool property parameters are ignored"
                },
                {
                  "flags": "-c, --start-task-cmd <start-task-cmd>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--start-task-cmd",
                  "description": "the command line of the start task"
                },
                {
                  "flags": "--certificate-ref <certificate-ref>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "long": "--certificate-ref",
                  "description": "the semicolon separated list of thumbprints specifying the certificates to be installed on each compute node in the pool"
                },
                {
                  "flags": "--app-package-ref <app-package-ref>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "long": "--app-package-ref",
                  "description": "the semicolon separated list of ids specifying the application packages to be installed on each compute node in the pool"
                },
                {
                  "flags": "--metadata <metadata>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--metadata",
                  "description": "the semicolon separated list of name-value pairs associated with the pool as metadata, ex: name1=value1;name2=value"
                },
                {
                  "flags": "-r, --replace",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--replace",
                  "description": "uses update instead of patch"
                },
                {
                  "flags": "--if-match <if-match>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-match",
                  "description": "only perform if resource's ETag is an exact match to the specified value"
                },
                {
                  "flags": "--if-none-match <if-none-match>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-none-match",
                  "description": "only perform if resource's ETag does not match the specified value"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "resize",
              "description": "Resize (or stop resizing) the Batch pool",
              "fullName": "batch pool resize",
              "usage": "[options] [pool-id] [target-dedicated]",
              "filePath": "commands/batch/batch.pool.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-i, --id <pool-id>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--id",
                  "description": "the Batch pool id"
                },
                {
                  "flags": "--abort",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--abort",
                  "description": "stop resizing"
                },
                {
                  "flags": "-t, --target-dedicated <target-dedicated>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--target-dedicated",
                  "description": "the dedicated VM count to resize"
                },
                {
                  "flags": "--resize-timeout <resize-timeout>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--resize-timeout",
                  "description": "the timeout for allocation of compute nodes to the pool or removal of compute nodes from the pool, in ISO 8601 duration formation"
                },
                {
                  "flags": "-o, --deallocate-option <deallocate-option>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--deallocate-option",
                  "description": "sets when nodes may be removed from the pool, if the pool size is decreasing"
                },
                {
                  "flags": "--if-match <if-match>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-match",
                  "description": "only perform if resource's ETag is an exact match to the specified value"
                },
                {
                  "flags": "--if-none-match <if-none-match>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-none-match",
                  "description": "only perform if resource's ETag does not match the specified value"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            }
          ],
          "categories": {
            "autoscale": {
              "name": "autoscale",
              "description": "Commands to manage autoscale of your Batch pools",
              "fullName": "batch pool autoscale",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "disable",
                  "description": "Disable autoscale at the Batch pool",
                  "fullName": "batch pool autoscale disable",
                  "usage": "[options] [pool-id]",
                  "filePath": "commands/batch/batch.pool.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-i, --id <pool-id>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--id",
                      "description": "the Batch pool id"
                    },
                    {
                      "flags": "-a, --account-name <account-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the Batch account name"
                    },
                    {
                      "flags": "-k, --account-key <account-key>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the Batch account key"
                    },
                    {
                      "flags": "-u, --account-endpoint <account-endpoint>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--account-endpoint",
                      "description": "the Batch account URL"
                    }
                  ]
                },
                {
                  "name": "enable",
                  "description": "Enable autoscale at the Batch pool",
                  "fullName": "batch pool autoscale enable",
                  "usage": "[options] [pool-id]",
                  "filePath": "commands/batch/batch.pool.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-i, --id <pool-id>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--id",
                      "description": "the Batch pool id"
                    },
                    {
                      "flags": "-f, --autoscale-formula <autoscale-formula>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--autoscale-formula",
                      "description": "the autoscale formula, see https://azure.microsoft.com/en-us/documentation/articles/batch-automatic-scaling/ for more detail"
                    },
                    {
                      "flags": "--autoscale-evaluation-interval <autoscale-evaluation-interval>",
                      "required": -33,
                      "optional": 0,
                      "bool": true,
                      "long": "--autoscale-evaluation-interval",
                      "description": "the time interval for the desired autoscale evaluation period, in ISO 8601 duration formation"
                    },
                    {
                      "flags": "--if-match <if-match>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--if-match",
                      "description": "only perform if resource's ETag is an exact match to the specified value"
                    },
                    {
                      "flags": "--if-none-match <if-none-match>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--if-none-match",
                      "description": "only perform if resource's ETag does not match the specified value"
                    },
                    {
                      "flags": "--if-modified-since <if-modified-since>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "long": "--if-modified-since",
                      "description": "only perform if the resource has been modified since the specified time"
                    },
                    {
                      "flags": "--if-unmodified-since <if-unmodified-since>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "long": "--if-unmodified-since",
                      "description": "only perform if the resource has not been modified since the specified time"
                    },
                    {
                      "flags": "-a, --account-name <account-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the Batch account name"
                    },
                    {
                      "flags": "-k, --account-key <account-key>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the Batch account key"
                    },
                    {
                      "flags": "-u, --account-endpoint <account-endpoint>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--account-endpoint",
                      "description": "the Batch account URL"
                    }
                  ]
                },
                {
                  "name": "evaluate",
                  "description": "Evaluate autoscale at the Batch pool",
                  "fullName": "batch pool autoscale evaluate",
                  "usage": "[options] [pool-id] [autoscale-formula]",
                  "filePath": "commands/batch/batch.pool.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-i, --id <pool-id>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--id",
                      "description": "the Batch pool id"
                    },
                    {
                      "flags": "-f, --autoscale-formula <autoscale-formula>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--autoscale-formula",
                      "description": "the autoscale formula, see https://azure.microsoft.com/en-us/documentation/articles/batch-automatic-scaling/ for more detail"
                    },
                    {
                      "flags": "-a, --account-name <account-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the Batch account name"
                    },
                    {
                      "flags": "-k, --account-key <account-key>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the Batch account key"
                    },
                    {
                      "flags": "-u, --account-endpoint <account-endpoint>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--account-endpoint",
                      "description": "the Batch account URL"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "all-stats": {
              "name": "all-stats",
              "description": "Commands to manage all the pools under your Batch account",
              "fullName": "batch pool all-stats",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show lifetime summary statistics for all of the pools",
                  "fullName": "batch pool all-stats show",
                  "usage": "[options]",
                  "filePath": "commands/batch/batch.pool.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-a, --account-name <account-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the Batch account name"
                    },
                    {
                      "flags": "-k, --account-key <account-key>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the Batch account key"
                    },
                    {
                      "flags": "-u, --account-endpoint <account-endpoint>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--account-endpoint",
                      "description": "the Batch account URL"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "usage-metrics": {
              "name": "usage-metrics",
              "description": "Commands to manage usage metrics of your Batch pools",
              "fullName": "batch pool usage-metrics",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "List Batch pool usage metrics",
                  "fullName": "batch pool usage-metrics list",
                  "usage": "[options]",
                  "filePath": "commands/batch/batch.pool.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-s, --start-time <start-time>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--start-time",
                      "description": "the earliest time from which to include metrics"
                    },
                    {
                      "flags": "-e, --end-time <end-time>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--end-time",
                      "description": "the latest time from which to include metrics"
                    },
                    {
                      "flags": "--filter-clause <filter-clause>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--filter-clause",
                      "description": "an OData expression by which the results will be filtered"
                    },
                    {
                      "flags": "-a, --account-name <account-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the Batch account name"
                    },
                    {
                      "flags": "-k, --account-key <account-key>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the Batch account key"
                    },
                    {
                      "flags": "-u, --account-endpoint <account-endpoint>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--account-endpoint",
                      "description": "the Batch account URL"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "node-agent-skus": {
              "name": "node-agent-skus",
              "description": "Commands to manage node agent skus of IaaS pools",
              "fullName": "batch pool node-agent-skus",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "Lists the node agent SKUs supported by the Azure Batch service",
                  "fullName": "batch pool node-agent-skus list",
                  "usage": "[options]",
                  "filePath": "commands/batch/batch.pool.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--filter-clause <filter-clause>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--filter-clause",
                      "description": "an OData expression by which the results will be filtered"
                    },
                    {
                      "flags": "-a, --account-name <account-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the Batch account name"
                    },
                    {
                      "flags": "-k, --account-key <account-key>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the Batch account key"
                    },
                    {
                      "flags": "-u, --account-endpoint <account-endpoint>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--account-endpoint",
                      "description": "the Batch account URL"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "task": {
          "name": "task",
          "description": "Commands to manage your Batch tasks",
          "fullName": "batch task",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a Batch task",
              "fullName": "batch task create",
              "usage": "[options] [jobId] [json-file]",
              "filePath": "commands/batch/batch.task.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-j, --job-id <jobId>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-j",
                  "long": "--job-id",
                  "description": "the id of the job to which the task is to be added"
                },
                {
                  "flags": "-f, --json-file <json-file>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--json-file",
                  "description": "the file containing either a single task object or an array of task objects in JSON format, if this parameter is specified, --id and --command-line parameters are ignored"
                },
                {
                  "flags": "-i, --id <taskId>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--id",
                  "description": "the Batch task id"
                },
                {
                  "flags": "-c, --command-line <command-line>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--command-line",
                  "description": "the command line of the task"
                },
                {
                  "flags": "--affinity-id <affinity-id>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--affinity-id",
                  "description": "the opaque string representing the location of compute node or a task that has run previously"
                },
                {
                  "flags": "--max-wall-clock-time <max-wall-clock-time>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--max-wall-clock-time",
                  "description": "the maximum elapsed time that the task may run, measured from the time the task starts, in ISO 8601 duration formation"
                },
                {
                  "flags": "--max-task-retry-count <max-task-retry-count>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "long": "--max-task-retry-count",
                  "description": "the maximum number of times the task may be retried"
                },
                {
                  "flags": "--retention-time <retention-time>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--retention-time",
                  "description": "the time in which the working directory for the task is retained, in ISO 8601 duration formation"
                },
                {
                  "flags": "-e, --environment-settings <environment-settings>",
                  "required": -28,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--environment-settings",
                  "description": "the semicolon separated list of environment variable settings for the task, ex: name1=value1;name2=value2"
                },
                {
                  "flags": "-r, --resources-files <resources-files>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--resources-files",
                  "description": "the semicolon separated list of files that Batch will download to the compute node before running the command line, ex: blob1=file1;blob2=file2"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "list",
              "description": "List Batch tasks under a job",
              "fullName": "batch task list",
              "usage": "[options] [jobId]",
              "filePath": "commands/batch/batch.task.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-j, --job-id <jobId>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-j",
                  "long": "--job-id",
                  "description": "the id of the job from which you want to get a list of tasks"
                },
                {
                  "flags": "--select-clause <select-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--select-clause",
                  "description": "list of a subset of properties to select"
                },
                {
                  "flags": "--filter-clause <filter-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--filter-clause",
                  "description": "an OData expression by which the results will be filtered"
                },
                {
                  "flags": "--expand-clause <expand-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--expand-clause",
                  "description": "list of related entities by which the results can be expanded"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show information on the specified Batch task",
              "fullName": "batch task show",
              "usage": "[options] [jobId] [taskId]",
              "filePath": "commands/batch/batch.task.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-j, --job-id <jobId>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-j",
                  "long": "--job-id",
                  "description": "the Batch job id"
                },
                {
                  "flags": "-i, --id <taskId>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--id",
                  "description": "the Batch task id"
                },
                {
                  "flags": "--subtasks",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--subtasks",
                  "description": "display information about the subtasks of a multi-instance task"
                },
                {
                  "flags": "--select-clause <select-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--select-clause",
                  "description": "list of a subset of properties to select"
                },
                {
                  "flags": "--expand-clause <expand-clause>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--expand-clause",
                  "description": "list of related entities by which the results can be expanded"
                },
                {
                  "flags": "--if-match <if-match>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-match",
                  "description": "only perform if resource's ETag is an exact match to the specified value"
                },
                {
                  "flags": "--if-none-match <if-none-match>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-none-match",
                  "description": "only perform if resource's ETag does not match the specified value"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete the specified Batch task",
              "fullName": "batch task delete",
              "usage": "[options] [jobId] [taskId]",
              "filePath": "commands/batch/batch.task.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-j, --job-id <jobId>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-j",
                  "long": "--job-id",
                  "description": "the Batch job id"
                },
                {
                  "flags": "-i, --id <taskId>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--id",
                  "description": "the Batch task id"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "remove the specified Batch task without confirmation"
                },
                {
                  "flags": "--if-match <if-match>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-match",
                  "description": "only perform if resource's ETag is an exact match to the specified value"
                },
                {
                  "flags": "--if-none-match <if-none-match>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-none-match",
                  "description": "only perform if resource's ETag does not match the specified value"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "set",
              "description": "Update the properties of the specified Batch task",
              "fullName": "batch task set",
              "usage": "[options] [jobId] [taskId]",
              "filePath": "commands/batch/batch.task.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-j, --job-id <jobId>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-j",
                  "long": "--job-id",
                  "description": "the Batch job id"
                },
                {
                  "flags": "-i, --id <taskId>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--id",
                  "description": "the Batch task id"
                },
                {
                  "flags": "--max-wall-clock-time <max-wall-clock-time>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--max-wall-clock-time",
                  "description": "the maximum elapsed time that the task may run, measured from the time the task starts, in ISO 8601 duration formation"
                },
                {
                  "flags": "--max-task-retry-count <max-task-retry-count>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "long": "--max-task-retry-count",
                  "description": "the maximum number of times the task may be retried"
                },
                {
                  "flags": "--retention-time <retention-time>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--retention-time",
                  "description": "the time in which the working directory for the task is retained, in ISO 8601 duration formation"
                },
                {
                  "flags": "--if-match <if-match>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-match",
                  "description": "only perform if resource's ETag is an exact match to the specified value"
                },
                {
                  "flags": "--if-none-match <if-none-match>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-none-match",
                  "description": "only perform if resource's ETag does not match the specified value"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "stop",
              "description": "Terminate the specified Batch task",
              "fullName": "batch task stop",
              "usage": "[options] [jobId] [taskId]",
              "filePath": "commands/batch/batch.task.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-j, --job-id <jobId>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-j",
                  "long": "--job-id",
                  "description": "the Batch job id"
                },
                {
                  "flags": "-i, --id <taskId>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--id",
                  "description": "the Batch task id"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "terminate the specified Batch task without confirmation"
                },
                {
                  "flags": "--if-match <if-match>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-match",
                  "description": "only perform if resource's ETag is an exact match to the specified value"
                },
                {
                  "flags": "--if-none-match <if-none-match>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-none-match",
                  "description": "only perform if resource's ETag does not match the specified value"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            },
            {
              "name": "reactivate",
              "description": "Reactivate the specified Batch task",
              "fullName": "batch task reactivate",
              "usage": "[options] [jobId] [taskId]",
              "filePath": "commands/batch/batch.task.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-j, --job-id <jobId>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-j",
                  "long": "--job-id",
                  "description": "the Batch job id"
                },
                {
                  "flags": "-i, --id <taskId>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--id",
                  "description": "the Batch task id"
                },
                {
                  "flags": "--if-match <if-match>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-match",
                  "description": "only perform if resource's ETag is an exact match to the specified value"
                },
                {
                  "flags": "--if-none-match <if-none-match>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-none-match",
                  "description": "only perform if resource's ETag does not match the specified value"
                },
                {
                  "flags": "--if-modified-since <if-modified-since>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-modified-since",
                  "description": "only perform if the resource has been modified since the specified time"
                },
                {
                  "flags": "--if-unmodified-since <if-unmodified-since>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--if-unmodified-since",
                  "description": "only perform if the resource has not been modified since the specified time"
                },
                {
                  "flags": "-a, --account-name <account-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the Batch account name"
                },
                {
                  "flags": "-k, --account-key <account-key>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the Batch account key"
                },
                {
                  "flags": "-u, --account-endpoint <account-endpoint>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--account-endpoint",
                  "description": "the Batch account URL"
                }
              ]
            }
          ],
          "categories": {}
        }
      }
    },
    "config": {
      "name": "config",
      "description": "Commands to manage your local settings",
      "fullName": "config",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "list",
          "description": "List config settings",
          "fullName": "config list",
          "usage": "[options]",
          "filePath": "commands/config.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            }
          ]
        },
        {
          "name": "delete",
          "description": "Delete a config setting",
          "fullName": "config delete",
          "usage": "[options] <name>",
          "filePath": "commands/config.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            }
          ]
        },
        {
          "name": "set",
          "description": "Update a config setting",
          "fullName": "config set",
          "usage": "<name> <value>",
          "filePath": "commands/config.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            }
          ]
        },
        {
          "name": "mode",
          "description": "Sets the cli working mode, valid names are 'arm' for resource manager and 'asm' for service management",
          "fullName": "config mode",
          "usage": "[options] <name>",
          "filePath": "commands/config.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            }
          ]
        }
      ],
      "categories": {}
    },
    "servicefabric": {
      "name": "servicefabric",
      "description": "Commands to manage your Azure Service Fabric",
      "fullName": "servicefabric",
      "usage": "[options]",
      "options": [],
      "commands": [],
      "categories": {
        "application": {
          "name": "application",
          "description": "Commands to manage your application",
          "fullName": "servicefabric application",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "show",
              "description": "Show application",
              "fullName": "servicefabric application show",
              "usage": "[options]",
              "filePath": "commands/servicefabric/serviceFabricApplication.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --application-name <applicationName>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--application-name",
                  "description": "the name of the application"
                },
                {
                  "flags": "--select <fields>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--select",
                  "description": "select fields to show, call without this parameter to see all fields"
                }
              ]
            },
            {
              "name": "create",
              "description": "Create application, Example: azure servicefabric application create --application-name fabric:/app --application-type-name type1 --application-type-version 1.0",
              "fullName": "servicefabric application create",
              "usage": "[options] [applicationName] [applicationTypeName] [applicationTypeVersion]",
              "filePath": "commands/servicefabric/serviceFabricApplication.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --application-name <applicationName>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--application-name",
                  "description": "the name of the application"
                },
                {
                  "flags": "-t --application-type-name <applicationTypeName>",
                  "required": -28,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--application-type-name",
                  "description": "the name of the application type"
                },
                {
                  "flags": "-a --application-type-version <applicationTypeVersion>",
                  "required": -31,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--application-type-version",
                  "description": "the version of the application type"
                },
                {
                  "flags": "-p --application-parameter <applicationParameter>",
                  "required": -28,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--application-parameter",
                  "description": "the parameter of the application, json string \"{\"Key\": \"key1\", \"Value\": \"value1\"}\""
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete application",
              "fullName": "servicefabric application delete",
              "usage": "[options] [applicationName]",
              "filePath": "commands/servicefabric/serviceFabricApplication.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --application-name <applicationName>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--application-name",
                  "description": "the name of the application"
                }
              ]
            }
          ],
          "categories": {
            "manifest": {
              "name": "manifest",
              "description": "Commands to manage your application manifest",
              "fullName": "servicefabric application manifest",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show application manifest",
                  "fullName": "servicefabric application manifest show",
                  "usage": "[options] [applicationTypeName] [applicationTypeVersion]",
                  "filePath": "commands/servicefabric/serviceFabricApplication.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --application-type-name <applicationTypeName>",
                      "required": -28,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--application-type-name",
                      "description": "the name of the application type"
                    },
                    {
                      "flags": "-t --application-type-version <applicationTypeVersion>",
                      "required": -31,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--application-type-version",
                      "description": "the type of the application version"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "type": {
              "name": "type",
              "description": "Commands to manage your application type",
              "fullName": "servicefabric application type",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show application type, Example: azure servicefabric application type show --application-type-name type1",
                  "fullName": "servicefabric application type show",
                  "usage": "[options]",
                  "filePath": "commands/servicefabric/serviceFabricApplication.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --application-type-name <applicationTypeName>",
                      "required": -28,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--application-type-name",
                      "description": "the type of the application"
                    },
                    {
                      "flags": "--select <fields>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--select",
                      "description": "select fields to show, call without this parameter to see all fields"
                    }
                  ]
                },
                {
                  "name": "register",
                  "description": "Register application type, Example: azure servicefabric application type register --application-type-build-path Package1",
                  "fullName": "servicefabric application type register",
                  "usage": "[options] [applicationTypeBuildPath]",
                  "filePath": "commands/servicefabric/serviceFabricApplication.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-p --application-type-build-path <applicationTypeBuildPath>",
                      "required": -34,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--application-type-build-path",
                      "description": "the path of the application type build"
                    },
                    {
                      "flags": "-t --timeout <timeout>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--timeout",
                      "description": "the timeout, seconds"
                    }
                  ]
                },
                {
                  "name": "unregister",
                  "description": "Unregister application type, Example: azure servicefabric application type unregister --application-type-name type1 --application-type-version 1.0",
                  "fullName": "servicefabric application type unregister",
                  "usage": "[options] [applicationTypeName] [applicationTypeVersion]",
                  "filePath": "commands/servicefabric/serviceFabricApplication.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --application-type-name <applicationTypeName>",
                      "required": -28,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--application-type-name",
                      "description": "the name of the application type"
                    },
                    {
                      "flags": "-t --application-type-version <applicationTypeVersion>",
                      "required": -31,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--application-type-version",
                      "description": "the version of the application type"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "health": {
              "name": "health",
              "description": "Commands to send your application health",
              "fullName": "servicefabric application health",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show application health",
                  "fullName": "servicefabric application health show",
                  "usage": "[options] [applicationName]",
                  "filePath": "commands/servicefabric/serviceFabricApplication.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --application-name <applicationName>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--application-name",
                      "description": "the name of the application"
                    },
                    {
                      "flags": "-e --events-health-state-filter <eventsHealthStateFilter>",
                      "required": -33,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--events-health-state-filter",
                      "description": "the filter of the event health state, values are [Default|None|Ok|Warning|Error|All]"
                    },
                    {
                      "flags": "-f --deployed-applications-health-state-filter <deployedapplicationsHealthStateFilter>",
                      "required": -48,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--deployed-applications-health-state-filter",
                      "description": "the filter of the deployed applications health state, values are [Default|None|Ok|Warning|Error|All]"
                    },
                    {
                      "flags": "--select <fields>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--select",
                      "description": "select fields to show, call without this parameter to see all fields"
                    }
                  ]
                },
                {
                  "name": "send",
                  "description": "Send application health, Example: azure servicefabric application health send --application-name fabric:app --source-id monitor --property pc --health-state Ok --description healthy",
                  "fullName": "servicefabric application health send",
                  "usage": "[options] [applicationName] [sourceId] [property] [healthState]",
                  "filePath": "commands/servicefabric/serviceFabricApplication.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --application-name <applicationName>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--application-name",
                      "description": "the name of the application"
                    },
                    {
                      "flags": "-i --source-id <sourceId>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--source-id",
                      "description": "the id of the source"
                    },
                    {
                      "flags": "-p --property <property>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--property",
                      "description": "the property"
                    },
                    {
                      "flags": "-e --health-state <healthState>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--health-state",
                      "description": "the state of the health, values are [Ok|Warning|Error|Unknown]"
                    },
                    {
                      "flags": "-d --description <description>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--description",
                      "description": "the description"
                    },
                    {
                      "flags": "-m --time-to-live-in-milliSeconds <timeToLiveInMilliSeconds>",
                      "required": -35,
                      "optional": 0,
                      "bool": true,
                      "short": "-m",
                      "long": "--time-to-live-in-milliSeconds",
                      "description": "the time in milliseconds for live"
                    },
                    {
                      "flags": "-q --sequence-number <sequenceNumber>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--sequence-number",
                      "description": "the number of the sequence"
                    },
                    {
                      "flags": "-w --remove-when-expired",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--remove-when-expired",
                      "description": "the boolean of the remove when expired"
                    },
                    {
                      "flags": "--select <fields>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--select",
                      "description": "select fields to show, call without this parameter to see all fields"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "deployed": {
              "name": "deployed",
              "description": "Commands to manage your deployed application",
              "fullName": "servicefabric application deployed",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show deployed application",
                  "fullName": "servicefabric application deployed show",
                  "usage": "[options] [nodeName]",
                  "filePath": "commands/servicefabric/serviceFabricApplication.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --node-name <nodeName>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--node-name",
                      "description": "the name of the node"
                    },
                    {
                      "flags": "-a --application-name <applicationName>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--application-name",
                      "description": "the name of the application"
                    },
                    {
                      "flags": "--select <fields>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--select",
                      "description": "select fields to show, call without this parameter to see all fields"
                    }
                  ]
                }
              ],
              "categories": {
                "health": {
                  "name": "health",
                  "description": "Commands to manage your deployed application health",
                  "fullName": "servicefabric application deployed health",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "show",
                      "description": "Show deployed application health",
                      "fullName": "servicefabric application deployed health show",
                      "usage": "[options] [nodeName] [applicationName]",
                      "filePath": "commands/servicefabric/serviceFabricApplication.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-n --node-name <nodeName>",
                          "required": -16,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--node-name",
                          "description": "the name of the node"
                        },
                        {
                          "flags": "-a --application-name <applicationName>",
                          "required": -23,
                          "optional": 0,
                          "bool": true,
                          "short": "-a",
                          "long": "--application-name",
                          "description": "the name of the application"
                        },
                        {
                          "flags": "-f --events-health-state-filter <eventsHealthStateFilter>",
                          "required": -33,
                          "optional": 0,
                          "bool": true,
                          "short": "-f",
                          "long": "--events-health-state-filter",
                          "description": "the filter of the event health state, values are [Default|None|Ok|Warning|Error|All]"
                        },
                        {
                          "flags": "-p --deployed-service-packages-health-state-filter <deployedServicePackagesHealthStateFilter>",
                          "required": -52,
                          "optional": 0,
                          "bool": true,
                          "short": "-p",
                          "long": "--deployed-service-packages-health-state-filter",
                          "description": "the filter of the deployed service packages health state, values are [Default|None|Ok|Warning|Error|All]"
                        },
                        {
                          "flags": "--select <fields>",
                          "required": -10,
                          "optional": 0,
                          "bool": true,
                          "long": "--select",
                          "description": "select fields to show, call without this parameter to see all fields"
                        }
                      ]
                    },
                    {
                      "name": "send",
                      "description": "Send deployed application health, Example: azure servicefabric deployed application health send --node-name node1 --application-name fabric:app --source-id monitor --property pc --health-state Ok --description healthy",
                      "fullName": "servicefabric application deployed health send",
                      "usage": "[options] [nodeName] [applicationName] [sourceId] [property] [healthState]",
                      "filePath": "commands/servicefabric/serviceFabricApplication.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-n --node-name <nodeName>",
                          "required": -16,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--node-name",
                          "description": "the name of the node"
                        },
                        {
                          "flags": "-a --application-name <applicationName>",
                          "required": -23,
                          "optional": 0,
                          "bool": true,
                          "short": "-a",
                          "long": "--application-name",
                          "description": "the name of the application"
                        },
                        {
                          "flags": "-i --source-id <sourceId>",
                          "required": -16,
                          "optional": 0,
                          "bool": true,
                          "short": "-i",
                          "long": "--source-id",
                          "description": "the id of the source"
                        },
                        {
                          "flags": "-p --property <property>",
                          "required": -15,
                          "optional": 0,
                          "bool": true,
                          "short": "-p",
                          "long": "--property",
                          "description": "the property"
                        },
                        {
                          "flags": "-e --health-state <healthState>",
                          "required": -19,
                          "optional": 0,
                          "bool": true,
                          "short": "-e",
                          "long": "--health-state",
                          "description": "the state of the health, values are [Ok|Warning|Error|Unknown]"
                        },
                        {
                          "flags": "-d --description <description>",
                          "required": -18,
                          "optional": 0,
                          "bool": true,
                          "short": "-d",
                          "long": "--description",
                          "description": "the description"
                        },
                        {
                          "flags": "-t --time-to-live-in-milliseconds <timeToLiveInMilliseconds>",
                          "required": -35,
                          "optional": 0,
                          "bool": true,
                          "short": "-t",
                          "long": "--time-to-live-in-milliseconds",
                          "description": "the time in milliseconds for live"
                        },
                        {
                          "flags": "-q --sequence-number <sequenceNumber>",
                          "required": -22,
                          "optional": 0,
                          "bool": true,
                          "short": "-q",
                          "long": "--sequence-number",
                          "description": "the number of the sequence"
                        },
                        {
                          "flags": "-r --remove-when-expired",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-r",
                          "long": "--remove-when-expired",
                          "description": "the boolean of the remove when expired"
                        }
                      ]
                    }
                  ],
                  "categories": {}
                }
              }
            },
            "upgrade": {
              "name": "upgrade",
              "description": "Commands to manage your application upgrade",
              "fullName": "servicefabric application upgrade",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show application upgrade",
                  "fullName": "servicefabric application upgrade show",
                  "usage": "[options] [applicationName]",
                  "filePath": "commands/servicefabric/serviceFabricApplication.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --application-name <applicationName>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--application-name",
                      "description": "the name of the application"
                    }
                  ]
                },
                {
                  "name": "start",
                  "description": "Start application upgrade, Example: azure servicefabric application upgrade start --application-name fabric:/app --target-application-type-version 1.1 --rolling-upgrade-mode Monitored --force-restart true",
                  "fullName": "servicefabric application upgrade start",
                  "usage": "[options] [applicationName] [targetApplicationTypeVersion] [rollingUpgradeMode]",
                  "filePath": "commands/servicefabric/serviceFabricApplication.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --application-name <applicationName>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--application-name",
                      "description": "the name of the application"
                    },
                    {
                      "flags": "-t --target-application-type-version <targetApplicationTypeVersion>",
                      "required": -38,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--target-application-type-version",
                      "description": "the version of the target application type"
                    },
                    {
                      "flags": "-p --parameters <parameters>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--parameters",
                      "description": "the parameters, json string \"{\"Key\": \"key1\", \"Value\": \"value1\"}\""
                    },
                    {
                      "flags": "-m --rolling-upgrade-mode <rollingUpgradeMode>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "short": "-m",
                      "long": "--rolling-upgrade-mode",
                      "description": "the mode of the rolling upgrade, values are [UnmonitoredAuto|UnmonitoredManual|Monitored]"
                    },
                    {
                      "flags": "-r --upgrade-replica-set-check-timeout-in-seconds <upgradeReplicaSetCheckTimeoutInSeconds>",
                      "required": -51,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--upgrade-replica-set-check-timeout-in-seconds",
                      "description": "the name of the upgrade domain"
                    },
                    {
                      "flags": "-f --force-restart",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--force-restart",
                      "description": "the force restart"
                    },
                    {
                      "flags": "-o --monitoring-policy <monitoringPolicy>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--monitoring-policy",
                      "description": "the policy of the monitoring"
                    },
                    {
                      "flags": "-a --application-health-policy <applicationHealthPolicy>",
                      "required": -32,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--application-health-policy",
                      "description": "the policy of the health application"
                    }
                  ]
                },
                {
                  "name": "update",
                  "description": "Update application upgrade, Example: azure servicefabric application upgrade update --application-name fabric:/app --rolling-upgrade-mode Monitored",
                  "fullName": "servicefabric application upgrade update",
                  "usage": "[options] [applicationName]",
                  "filePath": "commands/servicefabric/serviceFabricApplication.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --application-name <applicationName>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--application-name",
                      "description": "the name of the application"
                    },
                    {
                      "flags": "-m --rolling-upgrade-mode <rollingUpgradeMode>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "short": "-m",
                      "long": "--rolling-upgrade-mode",
                      "description": "the mode of the rolling upgrade, values are [UnmonitoredAuto|UnmonitoredManual|Monitored]"
                    },
                    {
                      "flags": "-r --force-restart",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--force-restart",
                      "description": "the boolean of the force restart"
                    },
                    {
                      "flags": "-a --failure-action <failureAction>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--failure-action",
                      "description": "the mode of the failure action, values are [Rollback|Manual]"
                    },
                    {
                      "flags": "-i --upgrade-replica-set-check-timeout-in-seconds <upgradeReplicaSetCheckTimeoutInSeconds>",
                      "required": -51,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--upgrade-replica-set-check-timeout-in-seconds",
                      "description": "the mode of the rolling upgrade"
                    },
                    {
                      "flags": "-d --health-check-wait-duration-in-milliseconds <healthCheckWaitDurationInMilliseconds>",
                      "required": -49,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--health-check-wait-duration-in-milliseconds",
                      "description": "the mode of the rolling upgrade"
                    },
                    {
                      "flags": "-c --health-check-stable-duration-in-milliseconds <healthCheckStableDurationInMilliseconds>",
                      "required": -51,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--health-check-stable-duration-in-milliseconds",
                      "description": "the mode of the rolling upgrade"
                    },
                    {
                      "flags": "-e --health-check-retry-timeout-in-milliseconds <healthCheckRetryTimeoutInMilliseconds>",
                      "required": -49,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--health-check-retry-timeout-in-milliseconds",
                      "description": "the mode of the rolling upgrade"
                    },
                    {
                      "flags": "-u --upgrade-timeout-in-milliseconds <upgradeTimeoutInMilliseconds>",
                      "required": -38,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--upgrade-timeout-in-milliseconds",
                      "description": "the mode of the rolling upgrade"
                    },
                    {
                      "flags": "-p --upgrade-domain-timeout-in-milliseconds <upgradeDomainTimeoutInMilliseconds>",
                      "required": -45,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--upgrade-domain-timeout-in-milliseconds",
                      "description": "the mode of the rolling upgrade"
                    },
                    {
                      "flags": "-l --application-health-policy <applicationHealthPolicy>",
                      "required": -32,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--application-health-policy",
                      "description": "the policy of the health application"
                    }
                  ]
                },
                {
                  "name": "resume",
                  "description": "Resume application upgrade",
                  "fullName": "servicefabric application upgrade resume",
                  "usage": "[options] [applicationName] [upgradeDomainName]",
                  "filePath": "commands/servicefabric/serviceFabricApplication.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --application-name <applicationName>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--application-name",
                      "description": "the name of the application"
                    },
                    {
                      "flags": "-d --upgrade-domain-name <upgradeDomainName>",
                      "required": -26,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--upgrade-domain-name",
                      "description": "the name of the upgrade domain"
                    }
                  ]
                },
                {
                  "name": "rollback",
                  "description": "Start application upgrade rollback",
                  "fullName": "servicefabric application upgrade rollback",
                  "usage": "[options] [applicationName]",
                  "filePath": "commands/servicefabric/serviceFabricApplication.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --application-name <applicationName>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--application-name",
                      "description": "the name of the application"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "package": {
              "name": "package",
              "description": "Commands to manage your application package",
              "fullName": "servicefabric application package",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "copy",
                  "description": "Copy application package, Example: azure servicefabric application package copy --application-package-path /tmp/package1 --image-store-connection-string fabric:ImageStore",
                  "fullName": "servicefabric application package copy",
                  "usage": "[options] [applicationPackagePath] [imageStoreConnectionString]",
                  "filePath": "commands/servicefabric/serviceFabricPackage.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-p --application-package-path <applicationPackagePath>",
                      "required": -31,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--application-package-path",
                      "description": "the path of the application package"
                    },
                    {
                      "flags": "-c --image-store-connection-string <imageStoreConnectionString>",
                      "required": -36,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--image-store-connection-string",
                      "description": "the string of the image store connection"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "cluster": {
          "name": "cluster",
          "description": "Commands to manage your cluster",
          "fullName": "servicefabric cluster",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "connect",
              "description": "Connect cluster, Example: azure servicefabric cluster connect --connection-endpoint http://127.0.0.1:19080",
              "fullName": "servicefabric cluster connect",
              "usage": "[options] [connectionEndpoint]",
              "filePath": "commands/servicefabric/serviceFabricCluster.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-e --connection-endpoint <connectionEndpoint>",
                  "required": -26,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--connection-endpoint",
                  "description": "the url of the connection endpoint, value is [http|https]://[ip_address]"
                },
                {
                  "flags": "-p --client-key-path <clientKeyPath>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--client-key-path",
                  "description": "the path of the client key"
                },
                {
                  "flags": "-c --client-cert-path <clientCertPath>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--client-cert-path",
                  "description": "the path of the client cert"
                },
                {
                  "flags": "-a --ca-cert-path <caCertPath>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--ca-cert-path",
                  "description": "the path of the ca cert, comma separated if multiple"
                },
                {
                  "flags": "-t --strict-ssl-false",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--strict-ssl-false",
                  "description": "the boolean of the strict ssl, false to disable CN verification"
                },
                {
                  "flags": "-u --reject-unauthorized-false",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--reject-unauthorized-false",
                  "description": "the boolean of the reject unauthorized, false to disable CA verification"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show cluster",
              "fullName": "servicefabric cluster show",
              "usage": "[options]",
              "filePath": "commands/servicefabric/serviceFabricCluster.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--select <fields>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--select",
                  "description": "select fields to show, call without this parameter to see all fields"
                }
              ]
            }
          ],
          "categories": {
            "manifest": {
              "name": "manifest",
              "description": "Commands to manage your cluster manifest",
              "fullName": "servicefabric cluster manifest",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show cluster manifest",
                  "fullName": "servicefabric cluster manifest show",
                  "usage": "[options]",
                  "filePath": "commands/servicefabric/serviceFabricCluster.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "health": {
              "name": "health",
              "description": "Commands to manage your cluster health",
              "fullName": "servicefabric cluster health",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show cluster health",
                  "fullName": "servicefabric cluster health show",
                  "usage": "[options]",
                  "filePath": "commands/servicefabric/serviceFabricCluster.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-f --events-health-state-filter <eventsHealthStateFilter>",
                      "required": -33,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--events-health-state-filter",
                      "description": "the filter of the event health state, values are [Default|None|Ok|Warning|Error|All]"
                    },
                    {
                      "flags": "-n --nodes-health-state-filter <nodesHealthStateFilter>",
                      "required": -32,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--nodes-health-state-filter",
                      "description": "the filter of the nodes health state, values are [Default|None|Ok|Warning|Error|All]"
                    },
                    {
                      "flags": "-a --applications-health-state-filter <applicationsHealthStateFilter>",
                      "required": -39,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--applications-health-state-filter",
                      "description": "the filter of the applications health state, values are [Default|None|Ok|Warning|Error|All]"
                    },
                    {
                      "flags": "--select <fields>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--select",
                      "description": "select fields to show, call without this parameter to see all fields"
                    }
                  ]
                },
                {
                  "name": "send",
                  "description": "Send cluster health, Example: azure servicefabric cluster health send --source-id monitor --property pc --health-state Ok --description healthy",
                  "fullName": "servicefabric cluster health send",
                  "usage": "[options] [sourceId] [property] [healthState]",
                  "filePath": "commands/servicefabric/serviceFabricCluster.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-i --source-id <sourceId>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--source-id",
                      "description": "the id of the source"
                    },
                    {
                      "flags": "-p --property <property>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--property",
                      "description": "the property"
                    },
                    {
                      "flags": "-e --health-state <healthState>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--health-state",
                      "description": "the state of the health, values are [Ok|Warning|Error|Unknown]"
                    },
                    {
                      "flags": "-d --description <description>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--description",
                      "description": "the description"
                    },
                    {
                      "flags": "-m --time-to-live-in-milliseconds <timeToLiveInMilliseconds>",
                      "required": -35,
                      "optional": 0,
                      "bool": true,
                      "short": "-m",
                      "long": "--time-to-live-in-milliseconds",
                      "description": "the time in milliseconds for live"
                    },
                    {
                      "flags": "-n --sequence-number <sequenceNumber>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--sequence-number",
                      "description": "the number of the sequence"
                    },
                    {
                      "flags": "-o --remove-when-expired",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--remove-when-expired",
                      "description": "the boolean of the remove when expired"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "load": {
              "name": "load",
              "description": "Commands to manage your cluster load information",
              "fullName": "servicefabric cluster load",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show load information",
                  "fullName": "servicefabric cluster load show",
                  "usage": "[options]",
                  "filePath": "commands/servicefabric/serviceFabricCluster.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--select <fields>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--select",
                      "description": "select fields to show, call without this parameter to see all fields"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "upgrade": {
              "name": "upgrade",
              "description": "Commands to manage your cluster upgrade",
              "fullName": "servicefabric cluster upgrade",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show cluster upgrade",
                  "fullName": "servicefabric cluster upgrade show",
                  "usage": "[options]",
                  "filePath": "commands/servicefabric/serviceFabricCluster.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "node": {
          "name": "node",
          "description": "Commands to manage your node",
          "fullName": "servicefabric node",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "show",
              "description": "Show node",
              "fullName": "servicefabric node show",
              "usage": "[options]",
              "filePath": "commands/servicefabric/serviceFabricNode.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --node-name <nodeName>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--node-name",
                  "description": "the name of the node"
                },
                {
                  "flags": "--select <fields>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--select",
                  "description": "select fields to show, call without this parameter to see all fields"
                }
              ]
            },
            {
              "name": "enable",
              "description": "Enable node, Example: azure servicefabric node enable --node-name node1",
              "fullName": "servicefabric node enable",
              "usage": "[options] [nodeName]",
              "filePath": "commands/servicefabric/serviceFabricNode.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --node-name <nodeName>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--node-name",
                  "description": "the name of the node"
                }
              ]
            },
            {
              "name": "disable",
              "description": "Disable node, Example: azure servicefabric node enable --node-name node1 --deactivation-intent Pause",
              "fullName": "servicefabric node disable",
              "usage": "[options] [nodeName] [deactivationIntent]",
              "filePath": "commands/servicefabric/serviceFabricNode.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --node-name <nodeName>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--node-name",
                  "description": "the name of the node"
                },
                {
                  "flags": "-i --deactivation-intent <deactivationIntent>",
                  "required": -26,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--deactivation-intent",
                  "description": "the intent of the deactivation, values are [Pause|Restart|RemoveData|RemoveNode]"
                }
              ]
            }
          ],
          "categories": {
            "state": {
              "name": "state",
              "description": "Commands to manage your node load state",
              "fullName": "servicefabric node state",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "delete",
                  "description": "Delete node state",
                  "fullName": "servicefabric node state delete",
                  "usage": "[options] [nodeName]",
                  "filePath": "commands/servicefabric/serviceFabricNode.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --node-name <nodeName>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--node-name",
                      "description": "the name of the node"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "load": {
              "name": "load",
              "description": "Commands to manage your node load",
              "fullName": "servicefabric node load",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show node load information",
                  "fullName": "servicefabric node load show",
                  "usage": "[options] [nodeName]",
                  "filePath": "commands/servicefabric/serviceFabricNode.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --node-name <nodeName>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--node-name",
                      "description": "the name of the node"
                    },
                    {
                      "flags": "--select <fields>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--select",
                      "description": "select fields to show, call without this parameter to see all fields"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "health": {
              "name": "health",
              "description": "Commands to manage your node health",
              "fullName": "servicefabric node health",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show node health",
                  "fullName": "servicefabric node health show",
                  "usage": "[options] [nodeName]",
                  "filePath": "commands/servicefabric/serviceFabricNode.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --node-name <nodeName>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--node-name",
                      "description": "the name of the node"
                    },
                    {
                      "flags": "-f --events-health-state-filter <eventsHealthStateFilter>",
                      "required": -33,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--events-health-state-filter",
                      "description": "the filter of the event health state, values are [Default|None|Ok|Warning|Error|All]"
                    },
                    {
                      "flags": "--select <fields>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--select",
                      "description": "select fields to show, call without this parameter to see all fields"
                    }
                  ]
                },
                {
                  "name": "send",
                  "description": "Send node health, Example: azure servicefabric node health send --node-name node1 fabric:app --source-id monitor --property pc --health-state Ok --description healthy",
                  "fullName": "servicefabric node health send",
                  "usage": "[options] [nodeName] [sourceId] [property] [healthState]",
                  "filePath": "commands/servicefabric/serviceFabricNode.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --node-name <nodeName>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--node-name",
                      "description": "the name of the node"
                    },
                    {
                      "flags": "-i --source-id <sourceId>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--source-id",
                      "description": "the id of the source"
                    },
                    {
                      "flags": "-p --property <property>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--property",
                      "description": "the property"
                    },
                    {
                      "flags": "-e --health-state <healthState>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--health-state",
                      "description": "the state of the health, values are [Ok|Warning|Error|Unknown]"
                    },
                    {
                      "flags": "-d --description <description>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--description",
                      "description": "the description"
                    },
                    {
                      "flags": "-m --time-to-live-in-milliseconds <timeToLiveInMilliseconds>",
                      "required": -35,
                      "optional": 0,
                      "bool": true,
                      "short": "-m",
                      "long": "--time-to-live-in-milliseconds",
                      "description": "the time in milliseconds for live"
                    },
                    {
                      "flags": "-q --sequence-number <sequenceNumber>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--sequence-number",
                      "description": "the number of the sequence"
                    },
                    {
                      "flags": "-w --remove-when-expired",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--remove-when-expired",
                      "description": "the boolean of the remove when expired"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "code": {
          "name": "code",
          "description": "Commands to manage your code",
          "fullName": "servicefabric code",
          "usage": "[options]",
          "options": [],
          "commands": [],
          "categories": {
            "package": {
              "name": "package",
              "description": "Commands to manage your code package",
              "fullName": "servicefabric code package",
              "usage": "[options]",
              "options": [],
              "commands": [],
              "categories": {
                "deployed": {
                  "name": "deployed",
                  "description": "Commands to manage your deployed code package",
                  "fullName": "servicefabric code package deployed",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "show",
                      "description": "Show deployed application health",
                      "fullName": "servicefabric code package deployed show",
                      "usage": "[options] [nodeName] [applicationName]",
                      "filePath": "commands/servicefabric/serviceFabricPackage.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-n --node-name <nodeName>",
                          "required": -16,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--node-name",
                          "description": "the name of the node"
                        },
                        {
                          "flags": "-a --application-name <applicationName>",
                          "required": -23,
                          "optional": 0,
                          "bool": true,
                          "short": "-a",
                          "long": "--application-name",
                          "description": "the name of the application"
                        },
                        {
                          "flags": "--select <fields>",
                          "required": -10,
                          "optional": 0,
                          "bool": true,
                          "long": "--select",
                          "description": "select fields to show, call without this parameter to see all fields"
                        }
                      ]
                    }
                  ],
                  "categories": {}
                }
              }
            }
          }
        },
        "service": {
          "name": "service",
          "description": "Commands to manage your service",
          "fullName": "servicefabric service",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "show",
              "description": "Show service",
              "fullName": "servicefabric service show",
              "usage": "[options] [applicationName]",
              "filePath": "commands/servicefabric/serviceFabricService.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --application-name <serviceName>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--application-name",
                  "description": "the name of the application"
                },
                {
                  "flags": "-e --service-name <serviceName>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--service-name",
                  "description": "the name of the service"
                },
                {
                  "flags": "--select <fields>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--select",
                  "description": "select fields to show, call without this parameter to see all fields"
                }
              ]
            },
            {
              "name": "create",
              "description": "Create service, Example: servicefabric service create --application-name fabric:/app --service-name fabric:/app/service --service-type-name ServiceType1 --service-kind Stateless --instance-count 1 --partition-scheme Singleton",
              "fullName": "servicefabric service create",
              "usage": "[options] [applicationName] [serviceName] [serviceTypeName] [serviceKind] [partitionScheme]",
              "filePath": "commands/servicefabric/serviceFabricService.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --application-name <applicationName>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--application-name",
                  "description": "the name of the application"
                },
                {
                  "flags": "-e --service-name <serviceName>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--service-name",
                  "description": "the name of the service"
                },
                {
                  "flags": "-t --service-type-name <serviceTypeName>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--service-type-name",
                  "description": "the name of the service type"
                },
                {
                  "flags": "-k --service-kind <serviceKind>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--service-kind",
                  "description": "the kind of the service, values are [Stateless|Stateful]"
                },
                {
                  "flags": "-c --instance-count <instanceCount>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--instance-count",
                  "description": "the count of the instance"
                },
                {
                  "flags": "-r --target-replica-set-size <targetReplicaSetSize>",
                  "required": -30,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--target-replica-set-size",
                  "description": "the size of the target replica set"
                },
                {
                  "flags": "-m --min-replica-set-size <minReplicaSetSize>",
                  "required": -27,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--min-replica-set-size",
                  "description": "the size of the min replica set"
                },
                {
                  "flags": "-p --has-persisted-state",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--has-persisted-state",
                  "description": "the state of the persisted"
                },
                {
                  "flags": "-a --partition-scheme <partitionScheme>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--partition-scheme",
                  "description": "the scheme of the partition"
                },
                {
                  "flags": "-i --partition-count <partitionCount>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--partition-count",
                  "description": "the count of the partition"
                },
                {
                  "flags": "-o --partition-names <partitionNames>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--partition-names",
                  "description": "the names of the partition"
                },
                {
                  "flags": "-l --partition-low-key <partitionLowKey>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--partition-low-key",
                  "description": "the key of the partition low"
                },
                {
                  "flags": "-g --partition-high-key <partitionHighKey>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--partition-high-key",
                  "description": "the key of the partition high"
                },
                {
                  "flags": "-b --placement-constraints <placementConstraints>",
                  "required": -28,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--placement-constraints",
                  "description": "the constraints of the placement"
                },
                {
                  "flags": "-c --correlation-schema <correlationSchema>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--correlation-schema",
                  "description": "the schema of the correlation, json string"
                },
                {
                  "flags": "-d --service-load-metrics <serviceLoadMetrics>",
                  "required": -27,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--service-load-metrics",
                  "description": "the metrics of the service load, json string"
                },
                {
                  "flags": "-f --service-placement-policy-description <servicePlacementPolicyDescription>",
                  "required": -43,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--service-placement-policy-description",
                  "description": "the description of the service placement policy, json string"
                }
              ]
            },
            {
              "name": "update",
              "description": "Update service, Example: azure servicefabric service update --service-name fabric:/app --instance-count 1",
              "fullName": "servicefabric service update",
              "usage": "[options] [serviceName] [serviceKind]",
              "filePath": "commands/servicefabric/serviceFabricService.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --service-name <serviceName>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--service-name",
                  "description": "the name of the service"
                },
                {
                  "flags": "-k --service-kind <serviceKind>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--service-kind",
                  "description": "the kind of the service, values are [Stateless|Stateful]"
                },
                {
                  "flags": "-c --instance-count <instanceCount>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--instance-count",
                  "description": "the count of the instance"
                },
                {
                  "flags": "-r --target-replica-set-size <targetReplicaSetSize>",
                  "required": -30,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--target-replica-set-size",
                  "description": "the size of the target replica set"
                },
                {
                  "flags": "-m --min-replica-set-size <minReplicaSetSize>",
                  "required": -27,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--min-replica-set-size",
                  "description": "the size of the min replica set"
                },
                {
                  "flags": "-i --replica-restart-wait-duration-in-milliseconds <replicaRestartWaitDurationInMilliseconds>",
                  "required": -52,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--replica-restart-wait-duration-in-milliseconds",
                  "description": "the milliseconds of the replica restart wait duration"
                },
                {
                  "flags": "-d --quorum-loss-wait-duration-in-milliseconds <quorumLossWaitDurationInMilliseconds>",
                  "required": -48,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--quorum-loss-wait-duration-in-milliseconds",
                  "description": "the milliseconds of the quorum loss wait duration"
                },
                {
                  "flags": "-t --stand-by-replica-keep-duration-in-milliseconds <standByReplicaKeepDurationInMilliseconds>",
                  "required": -53,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--stand-by-replica-keep-duration-in-milliseconds",
                  "description": "the milliseconds of the stand by replica keep duration"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete service",
              "fullName": "servicefabric service delete",
              "usage": "[options] [serviceName]",
              "filePath": "commands/servicefabric/serviceFabricService.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --service-name <serviceName>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--service-name",
                  "description": "the name of the service"
                }
              ]
            },
            {
              "name": "resolve",
              "description": "Resolve service",
              "fullName": "servicefabric service resolve",
              "usage": "[options] [serviceName]",
              "filePath": "commands/servicefabric/serviceFabricService.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --service-name <serviceName>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--service-name",
                  "description": "the name of the service"
                },
                {
                  "flags": "-t --partition-key-type <partitionKeyType>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--partition-key-type",
                  "description": "the type of the partition key, values are [Singleton|Int64Range|Named]"
                },
                {
                  "flags": "-k --partition-key-value <partitionKeyValue>",
                  "required": -26,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--partition-key-value",
                  "description": "the value of the partition key"
                },
                {
                  "flags": "-r --previous-rsp-version <previousRspVersion>",
                  "required": -27,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--previous-rsp-version",
                  "description": "the version of the previous rsp"
                },
                {
                  "flags": "--select <fields>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--select",
                  "description": "select fields to show, call without this parameter to see all fields"
                }
              ]
            }
          ],
          "categories": {
            "package": {
              "name": "package",
              "description": "Commands to send your service package",
              "fullName": "servicefabric service package",
              "usage": "[options]",
              "options": [],
              "commands": [],
              "categories": {
                "deployed": {
                  "name": "deployed",
                  "description": "Commands to send your deployed service package",
                  "fullName": "servicefabric service package deployed",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "show",
                      "description": "Show deployed service package",
                      "fullName": "servicefabric service package deployed show",
                      "usage": "[options] [nodeName] [applicationName]",
                      "filePath": "commands/servicefabric/serviceFabricPackage.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-n --node-name <nodeName>",
                          "required": -16,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--node-name",
                          "description": "the name of the node"
                        },
                        {
                          "flags": "-a --application-name <applicationName>",
                          "required": -23,
                          "optional": 0,
                          "bool": true,
                          "short": "-a",
                          "long": "--application-name",
                          "description": "the name of the application"
                        },
                        {
                          "flags": "--select <fields>",
                          "required": -10,
                          "optional": 0,
                          "bool": true,
                          "long": "--select",
                          "description": "select fields to show, call without this parameter to see all fields"
                        }
                      ]
                    }
                  ],
                  "categories": {
                    "health": {
                      "name": "health",
                      "description": "Commands to manage your deployed service package health",
                      "fullName": "servicefabric service package deployed health",
                      "usage": "[options] [command]",
                      "options": [],
                      "commands": [
                        {
                          "name": "show",
                          "description": "Show deployed service package health",
                          "fullName": "servicefabric service package deployed health show",
                          "usage": "[options] [nodeName] [applicationName] [servicePackageName]",
                          "filePath": "commands/servicefabric/serviceFabricPackage.js",
                          "options": [
                            {
                              "flags": "-v, --verbose",
                              "required": 0,
                              "optional": 0,
                              "bool": true,
                              "short": "-v",
                              "long": "--verbose",
                              "description": "use verbose output"
                            },
                            {
                              "flags": "-vv",
                              "required": 0,
                              "optional": 0,
                              "bool": true,
                              "long": "-vv",
                              "description": "more verbose with debug output"
                            },
                            {
                              "flags": "--json",
                              "required": 0,
                              "optional": 0,
                              "bool": true,
                              "long": "--json",
                              "description": "use json output"
                            },
                            {
                              "flags": "-n --node-name <nodeName>",
                              "required": -16,
                              "optional": 0,
                              "bool": true,
                              "short": "-n",
                              "long": "--node-name",
                              "description": "the name of the node"
                            },
                            {
                              "flags": "-a --application-name <applicationName>",
                              "required": -23,
                              "optional": 0,
                              "bool": true,
                              "short": "-a",
                              "long": "--application-name",
                              "description": "the name of the application"
                            },
                            {
                              "flags": "-p --service-package-name <servicePackageName>",
                              "required": -27,
                              "optional": 0,
                              "bool": true,
                              "short": "-p",
                              "long": "--service-package-name",
                              "description": "the name of the service package"
                            },
                            {
                              "flags": "-f --events-health-state-filter <eventsHealthStateFilter>",
                              "required": -33,
                              "optional": 0,
                              "bool": true,
                              "short": "-f",
                              "long": "--events-health-state-filter",
                              "description": "the filter of the events health state, values are [Default|None|Ok|Warning|Error|All]"
                            },
                            {
                              "flags": "--select <fields>",
                              "required": -10,
                              "optional": 0,
                              "bool": true,
                              "long": "--select",
                              "description": "select fields to show, call without this parameter to see all fields"
                            }
                          ]
                        },
                        {
                          "name": "send",
                          "description": "Send deployed service package health, Example: azure servicefabric application health send --node-name node1 fabric:app --source-id monitor --property pc --health-state Ok --description healthy",
                          "fullName": "servicefabric service package deployed health send",
                          "usage": "[options] [nodeName] [applicationName] [serviceManifestName] [sourceId] [property] [healthState]",
                          "filePath": "commands/servicefabric/serviceFabricPackage.js",
                          "options": [
                            {
                              "flags": "-v, --verbose",
                              "required": 0,
                              "optional": 0,
                              "bool": true,
                              "short": "-v",
                              "long": "--verbose",
                              "description": "use verbose output"
                            },
                            {
                              "flags": "-vv",
                              "required": 0,
                              "optional": 0,
                              "bool": true,
                              "long": "-vv",
                              "description": "more verbose with debug output"
                            },
                            {
                              "flags": "--json",
                              "required": 0,
                              "optional": 0,
                              "bool": true,
                              "long": "--json",
                              "description": "use json output"
                            },
                            {
                              "flags": "-n --node-name <nodeName>",
                              "required": -16,
                              "optional": 0,
                              "bool": true,
                              "short": "-n",
                              "long": "--node-name",
                              "description": "the name of the node"
                            },
                            {
                              "flags": "-a --application-name <applicationName>",
                              "required": -23,
                              "optional": 0,
                              "bool": true,
                              "short": "-a",
                              "long": "--application-name",
                              "description": "the name of the application"
                            },
                            {
                              "flags": "-m --service-manifest-name <serviceManifestName>",
                              "required": -28,
                              "optional": 0,
                              "bool": true,
                              "short": "-m",
                              "long": "--service-manifest-name",
                              "description": "the name of the service manifest"
                            },
                            {
                              "flags": "-i --source-id <sourceId>",
                              "required": -16,
                              "optional": 0,
                              "bool": true,
                              "short": "-i",
                              "long": "--source-id",
                              "description": "the id of the source"
                            },
                            {
                              "flags": "-p --property <property>",
                              "required": -15,
                              "optional": 0,
                              "bool": true,
                              "short": "-p",
                              "long": "--property",
                              "description": "the property"
                            },
                            {
                              "flags": "-e --health-state <healthState>",
                              "required": -19,
                              "optional": 0,
                              "bool": true,
                              "short": "-e",
                              "long": "--health-state",
                              "description": "the state of the health, values are [Ok|Warning|Error|Unknown]"
                            },
                            {
                              "flags": "-d --description <description>",
                              "required": -18,
                              "optional": 0,
                              "bool": true,
                              "short": "-d",
                              "long": "--description",
                              "description": "the description"
                            },
                            {
                              "flags": "-l --time-to-live-in-milliseconds <timeToLiveInMilliseconds>",
                              "required": -35,
                              "optional": 0,
                              "bool": true,
                              "short": "-l",
                              "long": "--time-to-live-in-milliseconds",
                              "description": "the time in milliseconds for live"
                            },
                            {
                              "flags": "-q --sequence-number <sequenceNumber>",
                              "required": -22,
                              "optional": 0,
                              "bool": true,
                              "short": "-q",
                              "long": "--sequence-number",
                              "description": "the number of the sequence"
                            },
                            {
                              "flags": "-w --remove-when-expired",
                              "required": 0,
                              "optional": 0,
                              "bool": true,
                              "short": "-w",
                              "long": "--remove-when-expired",
                              "description": "the boolean of the remove when expired"
                            }
                          ]
                        }
                      ],
                      "categories": {}
                    }
                  }
                }
              }
            },
            "template": {
              "name": "template",
              "description": "Commands to manage your service template",
              "fullName": "servicefabric service template",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create service from template",
                  "fullName": "servicefabric service template create",
                  "usage": "[options] [applicationName] [serviceName] [serviceTypeName]",
                  "filePath": "commands/servicefabric/serviceFabricService.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --application-name <applicationName>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--application-name",
                      "description": "the name of the application"
                    },
                    {
                      "flags": "-e --service-name <serviceName>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--service-name",
                      "description": "the name of the service"
                    },
                    {
                      "flags": "-t --service-type-name <serviceTypeName>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--service-type-name",
                      "description": "the name of the service type"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "type": {
              "name": "type",
              "description": "Commands to manage your service manifest",
              "fullName": "servicefabric service type",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show service type",
                  "fullName": "servicefabric service type show",
                  "usage": "[options] [applicationTypeName] [applicationTypeVersion]",
                  "filePath": "commands/servicefabric/serviceFabricService.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --application-type-name <applicationTypeName>",
                      "required": -28,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--application-type-name",
                      "description": "the type of the application type"
                    },
                    {
                      "flags": "-t --application-type-version <applicationTypeVersion>",
                      "required": -31,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--application-type-version",
                      "description": "the version of the application type"
                    },
                    {
                      "flags": "--select <fields>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--select",
                      "description": "select fields to show, call without this parameter to see all fields"
                    }
                  ]
                }
              ],
              "categories": {
                "deployed": {
                  "name": "deployed",
                  "description": "Commands to manage your deployed service type",
                  "fullName": "servicefabric service type deployed",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "show",
                      "description": "Show deployed service type",
                      "fullName": "servicefabric service type deployed show",
                      "usage": "[options] [nodeName] [applicationName]",
                      "filePath": "commands/servicefabric/serviceFabricService.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-n --node-name <nodeName>",
                          "required": -16,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--node-name",
                          "description": "the name of the node"
                        },
                        {
                          "flags": "-p --service-package-name <servicePackageName>",
                          "required": -27,
                          "optional": 0,
                          "bool": true,
                          "short": "-p",
                          "long": "--service-package-name",
                          "description": "the name of the service package"
                        },
                        {
                          "flags": "-l --application-name <applicationName>",
                          "required": -23,
                          "optional": 0,
                          "bool": true,
                          "short": "-l",
                          "long": "--application-name",
                          "description": "the name of the application"
                        },
                        {
                          "flags": "--select <fields>",
                          "required": -10,
                          "optional": 0,
                          "bool": true,
                          "long": "--select",
                          "description": "select fields to show, call without this parameter to see all fields"
                        }
                      ]
                    }
                  ],
                  "categories": {}
                }
              }
            },
            "manifest": {
              "name": "manifest",
              "description": "Commands to manage your service manifest",
              "fullName": "servicefabric service manifest",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show service manifest",
                  "fullName": "servicefabric service manifest show",
                  "usage": "[options] [applicationTypeName] [applicationTypeVersion] [serviceManifestName]",
                  "filePath": "commands/servicefabric/serviceFabricService.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --application-type-name <applicationTypeName>",
                      "required": -28,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--application-type-name",
                      "description": "the type of the application type"
                    },
                    {
                      "flags": "-t --application-type-version <applicationTypeVersion>",
                      "required": -31,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--application-type-version",
                      "description": "the version of the application type"
                    },
                    {
                      "flags": "-m --service-manifest-name <serviceManifestName>",
                      "required": -28,
                      "optional": 0,
                      "bool": true,
                      "short": "-m",
                      "long": "--service-manifest-name",
                      "description": "the name of the service manifest"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "description": {
              "name": "description",
              "description": "Commands to manage your service",
              "fullName": "servicefabric service description",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show service description",
                  "fullName": "servicefabric service description show",
                  "usage": "[options] [serviceName]",
                  "filePath": "commands/servicefabric/serviceFabricService.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --service-name <serviceName>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--service-name",
                      "description": "the name of the service"
                    },
                    {
                      "flags": "--select <fields>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--select",
                      "description": "select fields to show, call without this parameter to see all fields"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "health": {
              "name": "health",
              "description": "Commands to manage your service",
              "fullName": "servicefabric service health",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show service health",
                  "fullName": "servicefabric service health show",
                  "usage": "[options] [serviceName]",
                  "filePath": "commands/servicefabric/serviceFabricService.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --service-name <serviceName>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--service-name",
                      "description": "the name of the service"
                    },
                    {
                      "flags": "--select <fields>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--select",
                      "description": "select fields to show, call without this parameter to see all fields"
                    }
                  ]
                },
                {
                  "name": "send",
                  "description": "Send service health, Example: azure servicefabric service health send --service-name fabric:/app/svc fabric:app --source-id monitor --property pc --health-state Ok --description healthy",
                  "fullName": "servicefabric service health send",
                  "usage": "[options] [serviceName] [sourceId] [property] [healthState]",
                  "filePath": "commands/servicefabric/serviceFabricService.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --service-name <serviceName>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--service-name",
                      "description": "the id of the partition"
                    },
                    {
                      "flags": "-i --source-id <sourceId>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--source-id",
                      "description": "the id of the source"
                    },
                    {
                      "flags": "-p --property <property>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--property",
                      "description": "the property"
                    },
                    {
                      "flags": "-e --health-state <healthState>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--health-state",
                      "description": "the state of the health, values are [Ok|Warning|Error|Unknown]"
                    },
                    {
                      "flags": "-d --description <description>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--description",
                      "description": "the description"
                    },
                    {
                      "flags": "-m --time-to-live-in-milliseconds <timeToLiveInMilliSeconds>",
                      "required": -35,
                      "optional": 0,
                      "bool": true,
                      "short": "-m",
                      "long": "--time-to-live-in-milliseconds",
                      "description": "the time in milliseconds for live"
                    },
                    {
                      "flags": "-q --sequence-number <sequenceNumber>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--sequence-number",
                      "description": "the number of the sequence"
                    },
                    {
                      "flags": "-w --remove-when-expired",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--remove-when-expired",
                      "description": "the boolean of the remove when expired"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "group": {
              "name": "group",
              "description": "Commands to manage your service group",
              "fullName": "servicefabric service group",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create service group, Example: servicefabric service create --application-name fabric:/app --service-name fabric:/app/service --service-type-name ServiceType1 --service-kind Stateless --instance-count 1 --partition-scheme Singleton",
                  "fullName": "servicefabric service group create",
                  "usage": "[options] [applicationName] [serviceName] [serviceTypeName] [serviceKind] [partitionScheme]",
                  "filePath": "commands/servicefabric/serviceFabricServiceGroup.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --application-name <applicationName>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--application-name",
                      "description": "the name of the application"
                    },
                    {
                      "flags": "-e --service-name <serviceName>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--service-name",
                      "description": "the name of the service"
                    },
                    {
                      "flags": "-t --service-type-name <serviceTypeName>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--service-type-name",
                      "description": "the name of the service type"
                    },
                    {
                      "flags": "-k --service-kind <serviceKind>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--service-kind",
                      "description": "the kind of the service, values are [Stateless|Stateful]"
                    },
                    {
                      "flags": "-c --instance-count <instanceCount>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--instance-count",
                      "description": "the count of the instance"
                    },
                    {
                      "flags": "-r --target-replica-set-size <targetReplicaSetSize>",
                      "required": -30,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--target-replica-set-size",
                      "description": "the size of the target replica set"
                    },
                    {
                      "flags": "-m --min-replica-set-size <minReplicaSetSize>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "short": "-m",
                      "long": "--min-replica-set-size",
                      "description": "the size of the min replica set"
                    },
                    {
                      "flags": "-p --has-persisted-state",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--has-persisted-state",
                      "description": "the state of the persisted"
                    },
                    {
                      "flags": "-a --partition-scheme <partitionScheme>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--partition-scheme",
                      "description": "the scheme of the partition"
                    },
                    {
                      "flags": "-t --partition-count <partitionCount>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--partition-count",
                      "description": "the count of the partition"
                    },
                    {
                      "flags": "-i --partition-names <partitionNames>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--partition-names",
                      "description": "the names of the partition"
                    },
                    {
                      "flags": "-l --partition-low-key <partitionLowKey>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--partition-low-key",
                      "description": "the key of the partition low"
                    },
                    {
                      "flags": "-g --partition-high-key <partitionHighKey>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--partition-high-key",
                      "description": "the key of the partition high"
                    },
                    {
                      "flags": "-d --service-group-member-description <serviceGroupMemberDescription>",
                      "required": -39,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--service-group-member-description",
                      "description": "the description of the service group member"
                    },
                    {
                      "flags": "-o --placement-constraints <placementConstraints>",
                      "required": -28,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--placement-constraints",
                      "description": "the constraints of the placement"
                    },
                    {
                      "flags": "-n --correlation-schema <correlationSchema>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--correlation-schema",
                      "description": "the schema of the correlation, json string"
                    },
                    {
                      "flags": "-a --service-load-metrics <serviceLoadMetrics>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--service-load-metrics",
                      "description": "the metrics of the service load, json string"
                    },
                    {
                      "flags": "-y --service-placement-policy-description <servicePlacementPolicyDescription>",
                      "required": -43,
                      "optional": 0,
                      "bool": true,
                      "short": "-y",
                      "long": "--service-placement-policy-description",
                      "description": "the description of the service placement policy, json string"
                    }
                  ]
                },
                {
                  "name": "update",
                  "description": "Update service group",
                  "fullName": "servicefabric service group update",
                  "usage": "[options] [applicationName] [serviceName] [serviceKind]",
                  "filePath": "commands/servicefabric/serviceFabricServiceGroup.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --application-name <applicationName>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--application-name",
                      "description": "the name of the application"
                    },
                    {
                      "flags": "-e --service-name <serviceName>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--service-name",
                      "description": "the name of the service"
                    },
                    {
                      "flags": "-k --service-kind <serviceKind>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--service-kind",
                      "description": "the kind of the service, values are [Stateless|Stateful]"
                    },
                    {
                      "flags": "-c --instance-count <instanceCount>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--instance-count",
                      "description": "the count of the instance"
                    },
                    {
                      "flags": "-r --target-replica-set-size <targetReplicaSetSize>",
                      "required": -30,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--target-replica-set-size",
                      "description": "the size of the target replica set"
                    },
                    {
                      "flags": "-m --min-replica-set-size <minReplicaSetSize>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "short": "-m",
                      "long": "--min-replica-set-size",
                      "description": "the size of the min replica set"
                    },
                    {
                      "flags": "-i --replica-restart-wait-duration-in-milliseconds <replicaRestartWaitDurationInMilliseconds>",
                      "required": -52,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--replica-restart-wait-duration-in-milliseconds",
                      "description": "the milliseconds of the replica restart wait duration"
                    },
                    {
                      "flags": "-d --quorum-loss-wait-duration-in-milliseconds <quorumLossWaitDurationInMilliseconds>",
                      "required": -48,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--quorum-loss-wait-duration-in-milliseconds",
                      "description": "the milliseconds of the quorum loss wait duration"
                    },
                    {
                      "flags": "-b --stand-by-replica-keep-duration-in-milliseconds <standByReplicaKeepDurationInMilliseconds>",
                      "required": -53,
                      "optional": 0,
                      "bool": true,
                      "short": "-b",
                      "long": "--stand-by-replica-keep-duration-in-milliseconds",
                      "description": "the milliseconds of the stand by replica keep duration"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete service group",
                  "fullName": "servicefabric service group delete",
                  "usage": "[options] [applicationName] [serviceName]",
                  "filePath": "commands/servicefabric/serviceFabricServiceGroup.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --application-name <applicationName>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--application-name",
                      "description": "the name of the application"
                    },
                    {
                      "flags": "-e --service-name <serviceName>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--service-name",
                      "description": "the name of the service"
                    }
                  ]
                }
              ],
              "categories": {
                "template": {
                  "name": "template",
                  "description": "Commands to manage your service group template",
                  "fullName": "servicefabric service group template",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "create",
                      "description": "Create service group from template",
                      "fullName": "servicefabric service group template create",
                      "usage": "[options] [applicationName] [serviceName] [serviceTypeName]",
                      "filePath": "commands/servicefabric/serviceFabricServiceGroup.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-n --application-name <applicationName>",
                          "required": -23,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--application-name",
                          "description": "the name of the application"
                        },
                        {
                          "flags": "-e --service-name <serviceName>",
                          "required": -19,
                          "optional": 0,
                          "bool": true,
                          "short": "-e",
                          "long": "--service-name",
                          "description": "the name of the service"
                        },
                        {
                          "flags": "-t --service-type-name <serviceTypeName>",
                          "required": -24,
                          "optional": 0,
                          "bool": true,
                          "short": "-t",
                          "long": "--service-type-name",
                          "description": "the name of the service type"
                        }
                      ]
                    }
                  ],
                  "categories": {}
                },
                "description": {
                  "name": "description",
                  "description": "Commands to manage your service group description",
                  "fullName": "servicefabric service group description",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "show",
                      "description": "Show service group description",
                      "fullName": "servicefabric service group description show",
                      "usage": "[options] [serviceName]",
                      "filePath": "commands/servicefabric/serviceFabricServiceGroup.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-n --service-name <serviceName>",
                          "required": -19,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--service-name",
                          "description": "the name of the service"
                        },
                        {
                          "flags": "--select <fields>",
                          "required": -10,
                          "optional": 0,
                          "bool": true,
                          "long": "--select",
                          "description": "select fields to show, call without this parameter to see all fields"
                        }
                      ]
                    }
                  ],
                  "categories": {}
                },
                "member": {
                  "name": "member",
                  "description": "Commands to manage your service",
                  "fullName": "servicefabric service group member",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "show",
                      "description": "Show service group member",
                      "fullName": "servicefabric service group member show",
                      "usage": "[options] [applicationName] [serviceName]",
                      "filePath": "commands/servicefabric/serviceFabricServiceGroup.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-n --application-name <applicationName>",
                          "required": -23,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--application-name",
                          "description": "the name of the application"
                        },
                        {
                          "flags": "-e --service-name <serviceName>",
                          "required": -19,
                          "optional": 0,
                          "bool": true,
                          "short": "-e",
                          "long": "--service-name",
                          "description": "the name of the service"
                        },
                        {
                          "flags": "--select <fields>",
                          "required": -10,
                          "optional": 0,
                          "bool": true,
                          "long": "--select",
                          "description": "select fields to show, call without this parameter to see all fields"
                        }
                      ]
                    }
                  ],
                  "categories": {}
                }
              }
            }
          }
        },
        "partition": {
          "name": "partition",
          "description": "Commands to manage your partition",
          "fullName": "servicefabric partition",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "show",
              "description": "Show partition",
              "fullName": "servicefabric partition show",
              "usage": "[options] [serviceName]",
              "filePath": "commands/servicefabric/serviceFabricPartition.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --service-name <serviceName>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--service-name",
                  "description": "the name of the service"
                },
                {
                  "flags": "-i --partition-id <partitionId>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--partition-id",
                  "description": "the id of the partition"
                },
                {
                  "flags": "--select <fields>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--select",
                  "description": "select fields to show, call without this parameter to see all fields"
                }
              ]
            },
            {
              "name": "repair",
              "description": "Repair partition",
              "fullName": "servicefabric partition repair",
              "usage": "[options]",
              "filePath": "commands/servicefabric/serviceFabricPartition.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --service-name <serviceName>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--service-name",
                  "description": "the name of the service"
                },
                {
                  "flags": "-i --partition-id <partitionId>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--partition-id",
                  "description": "the id of the partition"
                }
              ]
            }
          ],
          "categories": {
            "health": {
              "name": "health",
              "description": "Commands to manage your partition health",
              "fullName": "servicefabric partition health",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show partition health",
                  "fullName": "servicefabric partition health show",
                  "usage": "[options] [partitionId]",
                  "filePath": "commands/servicefabric/serviceFabricPartition.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-i --partition-id <partitionId>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--partition-id",
                      "description": "the id of the partition"
                    },
                    {
                      "flags": "-f --events-health-state-filter <eventsHealthStateFilter>",
                      "required": -33,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--events-health-state-filter",
                      "description": "the filter of the events health state, values are [Default|None|Ok|Warning|Error|All]"
                    },
                    {
                      "flags": "-r --replicas-health-state-filter <replicasHealthStateFilter>",
                      "required": -35,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--replicas-health-state-filter",
                      "description": "the filter of the replicas health state, values are [Default|None|Ok|Warning|Error|All]"
                    },
                    {
                      "flags": "--select <fields>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--select",
                      "description": "select fields to show, call without this parameter to see all fields"
                    }
                  ]
                },
                {
                  "name": "send",
                  "description": "Send partition health, Example: azure servicefabric partition health send --partition-id 1234 fabric:app --source-id monitor --property pc --health-state Ok --description healthy",
                  "fullName": "servicefabric partition health send",
                  "usage": "[options] [partitionId] [sourceId] [property] [healthState]",
                  "filePath": "commands/servicefabric/serviceFabricPartition.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-i --partition-id <partitionId>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--partition-id",
                      "description": "the id of the partition"
                    },
                    {
                      "flags": "-o --source-id <sourceId>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--source-id",
                      "description": "the id of the source"
                    },
                    {
                      "flags": "-p --property <property>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--property",
                      "description": "the property"
                    },
                    {
                      "flags": "-e --health-state <healthState>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--health-state",
                      "description": "the state of the health, values are [Ok|Warning|Error|Unknown]"
                    },
                    {
                      "flags": "-d --description <description>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--description",
                      "description": "the description"
                    },
                    {
                      "flags": "-m --time-to-live-in-milliseconds <timeToLiveInMilliseconds>",
                      "required": -35,
                      "optional": 0,
                      "bool": true,
                      "short": "-m",
                      "long": "--time-to-live-in-milliseconds",
                      "description": "the time in milliseconds for live"
                    },
                    {
                      "flags": "-n --sequence-number <sequenceNumber>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--sequence-number",
                      "description": "the number of the sequence"
                    },
                    {
                      "flags": "-w --remove-when-expired",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--remove-when-expired",
                      "description": "the boolean of the remove when expired"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "load": {
              "name": "load",
              "description": "Commands to manage your partition load information",
              "fullName": "servicefabric partition load",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show partition load information",
                  "fullName": "servicefabric partition load show",
                  "usage": "[options] [partitionId]",
                  "filePath": "commands/servicefabric/serviceFabricPartition.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-i --partition-id <partitionId>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--partition-id",
                      "description": "the id of the partition"
                    },
                    {
                      "flags": "--select <fields>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--select",
                      "description": "select fields to show, call without this parameter to see all fields"
                    }
                  ]
                },
                {
                  "name": "reset",
                  "description": "Reset partition",
                  "fullName": "servicefabric partition load reset",
                  "usage": "[options] [partitionId]",
                  "filePath": "commands/servicefabric/serviceFabricPartition.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-i --partition-id <partitionId>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--partition-id",
                      "description": "the id of the partition"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "replica": {
          "name": "replica",
          "description": "Commands to manage your replica",
          "fullName": "servicefabric replica",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "show",
              "description": "Show replica",
              "fullName": "servicefabric replica show",
              "usage": "[options] [partitionId]",
              "filePath": "commands/servicefabric/serviceFabricReplica.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-i --partition-id <partitionId>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--partition-id",
                  "description": "the id of the partition"
                },
                {
                  "flags": "-r --replica-id <replicaId>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--replica-id",
                  "description": "the id of the replica"
                },
                {
                  "flags": "--select <fields>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--select",
                  "description": "select fields to show, call without this parameter to see all fields"
                }
              ]
            }
          ],
          "categories": {
            "deployed": {
              "name": "deployed",
              "description": "Commands to manage your deployed replica",
              "fullName": "servicefabric replica deployed",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show deployed replica",
                  "fullName": "servicefabric replica deployed show",
                  "usage": "[options] [nodeName] [applicationName]",
                  "filePath": "commands/servicefabric/serviceFabricReplica.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --node-name <nodeName>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--node-name",
                      "description": "the name of the node"
                    },
                    {
                      "flags": "-a --application-name <applicationName>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--application-name",
                      "description": "the name of the application"
                    },
                    {
                      "flags": "--select <fields>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--select",
                      "description": "select fields to show, call without this parameter to see all fields"
                    }
                  ]
                },
                {
                  "name": "detail",
                  "description": "Show deployed replica detail",
                  "fullName": "servicefabric replica deployed detail",
                  "usage": "[options] [nodeName] [partitionName] [replicaId]",
                  "filePath": "commands/servicefabric/serviceFabricReplica.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --node-name <nodeName>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--node-name",
                      "description": "the name of the node"
                    },
                    {
                      "flags": "-p --partition-name <partitionName>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--partition-name",
                      "description": "the name of the partition"
                    },
                    {
                      "flags": "-i --replica-id <replicaId>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--replica-id",
                      "description": "the id of the replica"
                    },
                    {
                      "flags": "--select <fields>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--select",
                      "description": "select fields to show, call without this parameter to see all fields"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "health": {
              "name": "health",
              "description": "Commands to manage your replica health",
              "fullName": "servicefabric replica health",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show replica health",
                  "fullName": "servicefabric replica health show",
                  "usage": "[options] [partitionId] [replicaId]",
                  "filePath": "commands/servicefabric/serviceFabricReplica.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-i --partition-id <partitionId>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--partition-id",
                      "description": "the id of the partition"
                    },
                    {
                      "flags": "-r --replica-id <replicaId>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--replica-id",
                      "description": "the id of the replicas"
                    },
                    {
                      "flags": "-f --events-health-state-filter <eventsHealthStateFilter>",
                      "required": -33,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--events-health-state-filter",
                      "description": "the filter of the events health state, values are [Default|None|Ok|Warning|Error|All]"
                    },
                    {
                      "flags": "--select <fields>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--select",
                      "description": "select fields to show, call without this parameter to see all fields"
                    }
                  ]
                },
                {
                  "name": "send",
                  "description": "Send replica health, Example: azure servicefabric replica health send --partition-id 1234 fabric:app --source-id monitor --property pc --health-state Ok --description healthy",
                  "fullName": "servicefabric replica health send",
                  "usage": "[options] [partitionId] [replicaId] [sourceId] [property] [healthState]",
                  "filePath": "commands/servicefabric/serviceFabricReplica.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-i --partition-id <partitionId>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--partition-id",
                      "description": "the id of the partition"
                    },
                    {
                      "flags": "-r --replica-id <replicaId>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--replica-id",
                      "description": "the id of the replica"
                    },
                    {
                      "flags": "-o --source-id <sourceId>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--source-id",
                      "description": "the id of the source"
                    },
                    {
                      "flags": "-p --property <property>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--property",
                      "description": "the property"
                    },
                    {
                      "flags": "-e --health-state <healthState>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--health-state",
                      "description": "the state of the health, values are [Ok|Warning|Error|Unknown]"
                    },
                    {
                      "flags": "-d --description <description>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--description",
                      "description": "the description"
                    },
                    {
                      "flags": "-m --time-to-live-in-milliseconds <timeToLiveInMilliseconds>",
                      "required": -35,
                      "optional": 0,
                      "bool": true,
                      "short": "-m",
                      "long": "--time-to-live-in-milliseconds",
                      "description": "the time in milliseconds for live"
                    },
                    {
                      "flags": "-n --sequence-number <sequenceNumber>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--sequence-number",
                      "description": "the number of the sequence"
                    },
                    {
                      "flags": "-w --remove-when-expired",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--remove-when-expired",
                      "description": "the boolean of the remove when expired"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "load": {
              "name": "load",
              "description": "Commands to manage your replica load information",
              "fullName": "servicefabric replica load",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show replica load information",
                  "fullName": "servicefabric replica load show",
                  "usage": "[options] [partitionId] [replicaId]",
                  "filePath": "commands/servicefabric/serviceFabricReplica.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-i --partition-id <partitionId>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--partition-id",
                      "description": "the id of the partition"
                    },
                    {
                      "flags": "-r --replica-id <replicaId>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--replica-id",
                      "description": "the id of the replica"
                    },
                    {
                      "flags": "--select <fields>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--select",
                      "description": "select fields to show, call without this parameter to see all fields"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        }
      }
    },
    "storage": {
      "name": "storage",
      "description": "Commands to manage your Storage objects",
      "fullName": "storage",
      "usage": "[options]",
      "options": [],
      "commands": [],
      "categories": {
        "account": {
          "name": "account",
          "description": "Commands to manage your Storage accounts",
          "fullName": "storage account",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List storage accounts",
              "fullName": "storage account list",
              "usage": "[options]",
              "filePath": "commands/storage/storage.account.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resourceGroup>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show a storage account",
              "fullName": "storage account show",
              "usage": "[options] <name>",
              "filePath": "commands/storage/storage.account.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resourceGroup>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "create",
              "description": "Create a storage account",
              "fullName": "storage account create",
              "usage": "[options] <name>",
              "filePath": "commands/storage/storage.account.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--sku-name <skuName>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--sku-name",
                  "description": "the SKU name (LRS/ZRS/GRS/RAGRS/PLRS)"
                },
                {
                  "flags": "--kind <kind>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--kind",
                  "description": "the account kind (Storage/BlobStorage)"
                },
                {
                  "flags": "--access-tier <accessTier>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--access-tier",
                  "description": "the access tier for Blob storage accounts (Hot/Cool)"
                },
                {
                  "flags": "--enable-encryption-service <enableEncryptionService>",
                  "required": -29,
                  "optional": 0,
                  "bool": true,
                  "long": "--enable-encryption-service",
                  "description": "specifies the service which needs to enable encryption settings. Valid inputs are blob, file or combination of any of them and separated with comma(,)"
                },
                {
                  "flags": "--custom-domain <customDomain>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--custom-domain",
                  "description": "the custom domain"
                },
                {
                  "flags": "--subdomain",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--subdomain",
                  "description": "whether uses the 'asverify' subdomain to preregister the custom domain"
                },
                {
                  "flags": "--tags <tags>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--tags",
                  "description": "the account tags. Tags are key=value pairs and separated with semicolon(;)"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-g, --resource-group <resourceGroup>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "set",
              "description": "Update a storage account",
              "fullName": "storage account set",
              "usage": "[options] <name>",
              "filePath": "commands/storage/storage.account.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--sku-name <skuName>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--sku-name",
                  "description": "the SKU name (LRS/GRS/RAGRS)"
                },
                {
                  "flags": "--access-tier <accessTier>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--access-tier",
                  "description": "the access tier for Blob storage accounts (Hot/Cool)"
                },
                {
                  "flags": "--enable-encryption-service <enableEncryptionService>",
                  "required": -29,
                  "optional": 0,
                  "bool": true,
                  "long": "--enable-encryption-service",
                  "description": "specifies the service which needs to enable encryption settings. Valid inputs are blob, file or combination of any of them and separated with comma(,). Only one of --enable-encryption-service and --disable-encryption-service can be set for a service"
                },
                {
                  "flags": "--disable-encryption-service <disableEncryptionService>",
                  "required": -30,
                  "optional": 0,
                  "bool": true,
                  "long": "--disable-encryption-service",
                  "description": "specifies the service which needs to disable encryption settings. Valid inputs are blob, file or combination of any of them and separated with comma(,). Only one of --enable-encryption-service and --disable-encryption-service can be set for a service"
                },
                {
                  "flags": "--custom-domain <customDomain>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--custom-domain",
                  "description": "the custom domain"
                },
                {
                  "flags": "--subdomain",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--subdomain",
                  "description": "whether uses the 'asverify' subdomain to preregister the custom domain"
                },
                {
                  "flags": "--tags <tags>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--tags",
                  "description": "the account tags. Tags are key=value pairs and separated with semicolon(;)"
                },
                {
                  "flags": "-g, --resource-group <resourceGroup>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a storage account",
              "fullName": "storage account delete",
              "usage": "[options] <name>",
              "filePath": "commands/storage/storage.account.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resourceGroup>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode, do not ask for delete confirmation"
                }
              ]
            },
            {
              "name": "check",
              "description": "Check whether the account name is valid and is not in use.",
              "fullName": "storage account check",
              "usage": "[options] <name>",
              "filePath": "commands/storage/storage.account.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                }
              ]
            }
          ],
          "categories": {
            "sas": {
              "name": "sas",
              "description": "Commands to manage shared access signatures of your storage account",
              "fullName": "storage account sas",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Generate shared access signature of storage account",
                  "fullName": "storage account sas create",
                  "usage": "[options] [services] [resourceTypes] [permissions] [expiry]",
                  "filePath": "commands/storage/storage.account.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--services <services>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--services",
                      "description": "the storage services accessible with the account SAS combining symbols of b(Blob)/f(File)/q(Queue)/t(Table)"
                    },
                    {
                      "flags": "--resource-types <resourceTypes>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--resource-types",
                      "description": "the storage resource types accessible with the account SAS combining symbols of s(Service)/c(Container/o(Object)"
                    },
                    {
                      "flags": "--permissions <permissions>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--permissions",
                      "description": "the operation permissions combining symbols of r(Read)/w(Write)/d(Delete)/l(List)/a(Add)/c(Create)/u(Update)/p(Process)"
                    },
                    {
                      "flags": "--protocol <protocol>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--protocol",
                      "description": "the protocol permitted for a request made with the SAS. Possible values are HttpsOnly and HttpsOrHttp"
                    },
                    {
                      "flags": "--ip-range <ipRange>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-range",
                      "description": "an IP address or a range of IP addresses from which to accept requests. When specifying a range of IP addresses, note that the range is inclusive. For example, specifying 168.1.5.65 or 168.1.5.60-168.1.5.70 on the SAS restricts the request to those IP addresses."
                    },
                    {
                      "flags": "--start <start>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--start",
                      "description": "the UTC time at which the SAS becomes valid"
                    },
                    {
                      "flags": "--expiry <expiry>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--expiry",
                      "description": "the UTC time at which the SAS expires"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "keys": {
              "name": "keys",
              "description": "Commands to manage your Storage account keys",
              "fullName": "storage account keys",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "List the keys for a storage account",
                  "fullName": "storage account keys list",
                  "usage": "[options] <name>",
                  "filePath": "commands/storage/storage.account.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resourceGroup>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the resource group name"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                },
                {
                  "name": "renew",
                  "description": "Renew a key for a storage account from your account",
                  "fullName": "storage account keys renew",
                  "usage": "[options] <name>",
                  "filePath": "commands/storage/storage.account.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--primary",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--primary",
                      "description": "Update the primary key"
                    },
                    {
                      "flags": "--secondary",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--secondary",
                      "description": "Update the secondary key"
                    },
                    {
                      "flags": "-g, --resource-group <resourceGroup>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the resource group name"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "usage": {
              "name": "usage",
              "description": "Commands to manage your Storage accounts usage",
              "fullName": "storage account usage",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show the current count and the limit of the storage accounts under the subscription.",
                  "fullName": "storage account usage show",
                  "usage": "[options] [subscription]",
                  "filePath": "commands/storage/storage.account.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "connectionstring": {
              "name": "connectionstring",
              "description": "Commands to show your Storage connection string",
              "fullName": "storage account connectionstring",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show the connection string for your account",
                  "fullName": "storage account connectionstring show",
                  "usage": "[options] <name>",
                  "filePath": "commands/storage/storage.account.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resourceGroup>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the resource group name"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    },
                    {
                      "flags": "--use-http",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--use-http",
                      "description": "Use http as default endpoints protocol"
                    },
                    {
                      "flags": "--blob-endpoint <blobEndpoint>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--blob-endpoint",
                      "description": "the blob endpoint"
                    },
                    {
                      "flags": "--queue-endpoint <queueEndpoint>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--queue-endpoint",
                      "description": "the queue endpoint"
                    },
                    {
                      "flags": "--table-endpoint <tableEndpoint>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--table-endpoint",
                      "description": "the table endpoint"
                    },
                    {
                      "flags": "--file-endpoint <fileEndpoint>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--file-endpoint",
                      "description": "the file endpoint"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "container": {
          "name": "container",
          "description": "Commands to manage your storage containers",
          "fullName": "storage container",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List storage containers with wildcard",
              "fullName": "storage container list",
              "usage": "[options] [prefix]",
              "filePath": "commands/storage/storage.blob.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-p, --prefix <prefix>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--prefix",
                  "description": "the storage container name prefix"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show details of the specified storage container",
              "fullName": "storage container show",
              "usage": "[options] [container]",
              "filePath": "commands/storage/storage.blob.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--container <container>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--container",
                  "description": "the storage container name"
                },
                {
                  "flags": "--lease <leaseId>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--lease",
                  "description": "the lease ID"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "create",
              "description": "Create a storage container",
              "fullName": "storage container create",
              "usage": "[options] [container]",
              "filePath": "commands/storage/storage.blob.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--container <container>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--container",
                  "description": "the storage container name"
                },
                {
                  "flags": "-p, --permission <permission>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--permission",
                  "description": "the storage container ACL permission(Off/Blob/Container)"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete the specified storage container",
              "fullName": "storage container delete",
              "usage": "[options] [container]",
              "filePath": "commands/storage/storage.blob.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--container <container>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--container",
                  "description": "the storage container name"
                },
                {
                  "flags": "--lease <leaseId>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--lease",
                  "description": "the lease ID"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "remove the specified storage container without confirmation"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "set",
              "description": "Set storage container ACL",
              "fullName": "storage container set",
              "usage": "[options] [container]",
              "filePath": "commands/storage/storage.blob.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--container <container>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--container",
                  "description": "the storage container name"
                },
                {
                  "flags": "--lease <leaseId>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--lease",
                  "description": "the lease ID"
                },
                {
                  "flags": "-p, --permission <permission>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--permission",
                  "description": "the storage container ACL permission(Off/Blob/Container)"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            }
          ],
          "categories": {
            "lease": {
              "name": "lease",
              "description": "Commands to manage leases of your storage container",
              "fullName": "storage container lease",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "acquire",
                  "description": "Acquire a new lease against your storage container",
                  "fullName": "storage container lease acquire",
                  "usage": "[options] [container] [duration] [proposedId]",
                  "filePath": "commands/storage/storage.blob.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--container <container>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--container",
                      "description": "the storage container name"
                    },
                    {
                      "flags": "--duration <duration>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--duration",
                      "description": "the lease duration in seconds (15-60) or not specify for a lease that never expires"
                    },
                    {
                      "flags": "--proposed-id <proposedId>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--proposed-id",
                      "description": "the proposed lease ID"
                    },
                    {
                      "flags": "--sas <sas>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--sas",
                      "description": "the shared access signature"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "renew",
                  "description": "Renew an existing lease against your storage container",
                  "fullName": "storage container lease renew",
                  "usage": "[options] [container] [lease]",
                  "filePath": "commands/storage/storage.blob.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--container <container>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--container",
                      "description": "the storage container name"
                    },
                    {
                      "flags": "--lease <leaseId>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--lease",
                      "description": "the existing lease ID"
                    },
                    {
                      "flags": "--sas <sas>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--sas",
                      "description": "the shared access signature"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "change",
                  "description": "Change an existing lease against your storage container",
                  "fullName": "storage container lease change",
                  "usage": "[options] [container] [lease] [proposedId]",
                  "filePath": "commands/storage/storage.blob.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--container <container>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--container",
                      "description": "the storage container name"
                    },
                    {
                      "flags": "--lease <leaseId>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--lease",
                      "description": "the existing lease ID"
                    },
                    {
                      "flags": "--proposed-id <proposedId>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--proposed-id",
                      "description": "the proposed lease ID"
                    },
                    {
                      "flags": "--sas <sas>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--sas",
                      "description": "the shared access signature"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "release",
                  "description": "Release an existing lease against your storage container",
                  "fullName": "storage container lease release",
                  "usage": "[options] [container] [lease]",
                  "filePath": "commands/storage/storage.blob.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--container <container>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--container",
                      "description": "the storage container name"
                    },
                    {
                      "flags": "--lease <leaseId>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--lease",
                      "description": "the existing lease ID"
                    },
                    {
                      "flags": "--sas <sas>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--sas",
                      "description": "the shared access signature"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "break",
                  "description": "Break an existing lease against your storage container",
                  "fullName": "storage container lease break",
                  "usage": "[options] [container] [duration]",
                  "filePath": "commands/storage/storage.blob.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--container <container>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--container",
                      "description": "the storage container name"
                    },
                    {
                      "flags": "--duration <duration>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--duration",
                      "description": "the proposed duration the lease should continue before it is broken in seconds (0-60)"
                    },
                    {
                      "flags": "--sas <sas>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--sas",
                      "description": "the shared access signature"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "sas": {
              "name": "sas",
              "description": "Commands to manage shared access signatures of your storage container",
              "fullName": "storage container sas",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Generate shared access signature of storage container",
                  "fullName": "storage container sas create",
                  "usage": "[options] [container] [permissions] [expiry]",
                  "filePath": "commands/storage/storage.blob.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--container <container>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--container",
                      "description": "the storage container name"
                    },
                    {
                      "flags": "--permissions <permissions>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--permissions",
                      "description": "the operation permissions combining symbols of r(Read)/w(Write)/d(Delete)/l(List)"
                    },
                    {
                      "flags": "--protocol <protocol>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--protocol",
                      "description": "the protocol permitted for a request made with the SAS. Possible values are HttpsOnly and HttpsOrHttp"
                    },
                    {
                      "flags": "--ip-range <ipRange>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-range",
                      "description": "an IP address or a range of IP addresses from which to accept requests. When specifying a range of IP addresses, note that the range is inclusive. For example, specifying 168.1.5.65 or 168.1.5.60-168.1.5.70 on the SAS restricts the request to those IP addresses."
                    },
                    {
                      "flags": "--start <start>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--start",
                      "description": "the UTC time at which the SAS becomes valid"
                    },
                    {
                      "flags": "--expiry <expiry>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--expiry",
                      "description": "the UTC time at which the SAS expires"
                    },
                    {
                      "flags": "--policy <policy>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--policy",
                      "description": "the stored access policy identifier"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "policy": {
              "name": "policy",
              "description": "Commands to manage stored access policies of your storage container",
              "fullName": "storage container policy",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a stored access policy on the container",
                  "fullName": "storage container policy create",
                  "usage": "[options] [container] [name]",
                  "filePath": "commands/storage/storage.blob.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--container <container>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--container",
                      "description": "the storage container name"
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "the policy name"
                    },
                    {
                      "flags": "--lease <leaseId>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--lease",
                      "description": "the lease ID"
                    },
                    {
                      "flags": "--start <start>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--start",
                      "description": "the UTC time at which the policy becomes valid"
                    },
                    {
                      "flags": "--expiry <expiry>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--expiry",
                      "description": "the UTC time at which the policy expires"
                    },
                    {
                      "flags": "--permissions <permissions>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--permissions",
                      "description": "the operation permissions combining symbols of r(Read)/w(Write)/d(Delete)/l(List)"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a stored access policy on the container",
                  "fullName": "storage container policy show",
                  "usage": "[options] [container] [name]",
                  "filePath": "commands/storage/storage.blob.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--container <container>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--container",
                      "description": "the storage container name"
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "the policy name"
                    },
                    {
                      "flags": "--lease <leaseId>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--lease",
                      "description": "the lease ID"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List stored access policies on the container",
                  "fullName": "storage container policy list",
                  "usage": "[options] [container]",
                  "filePath": "commands/storage/storage.blob.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--container <container>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--container",
                      "description": "the storage container name"
                    },
                    {
                      "flags": "--lease <leaseId>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--lease",
                      "description": "the lease ID"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Set a stored access policy on the container",
                  "fullName": "storage container policy set",
                  "usage": "[options] [container] [name]",
                  "filePath": "commands/storage/storage.blob.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--container <container>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--container",
                      "description": "the storage container name"
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "the policy name"
                    },
                    {
                      "flags": "--lease <leaseId>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--lease",
                      "description": "the lease ID"
                    },
                    {
                      "flags": "--start <start>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--start",
                      "description": "the UTC time at which the policy becomes valid and passing two spaces means to remove the existing setting"
                    },
                    {
                      "flags": "--expiry <expiry>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--expiry",
                      "description": "the UTC time at which the policy expires and passing two spaces means to remove the existing setting"
                    },
                    {
                      "flags": "--permissions <permissions>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--permissions",
                      "description": "the operation permissions combining symbols of r(Read)/w(Write)/d(Delete)/l(List) and passing two spaces means to remove the existing setting"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a stored access policy on the container",
                  "fullName": "storage container policy delete",
                  "usage": "[options] [container] [name]",
                  "filePath": "commands/storage/storage.blob.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--container <container>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--container",
                      "description": "the storage container name"
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "the policy name"
                    },
                    {
                      "flags": "--lease <leaseId>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--lease",
                      "description": "the lease ID"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "blob": {
          "name": "blob",
          "description": "Commands to manage your storage blobs",
          "fullName": "storage blob",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List storage blob in the specified storage container use wildcard and blob name prefix",
              "fullName": "storage blob list",
              "usage": "[options] [container] [prefix]",
              "filePath": "commands/storage/storage.blob.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--container <container>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--container",
                  "description": "the storage container name"
                },
                {
                  "flags": "-p, --prefix <prefix>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--prefix",
                  "description": "the blob name prefix"
                },
                {
                  "flags": "--sas <sas>",
                  "required": -7,
                  "optional": 0,
                  "bool": true,
                  "long": "--sas",
                  "description": "the shared access signature"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show details of the specified storage blob",
              "fullName": "storage blob show",
              "usage": "[options] [container] [blob]",
              "filePath": "commands/storage/storage.blob.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--container <container>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--container",
                  "description": "the storage container name"
                },
                {
                  "flags": "-b, --blob <blobName>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--blob",
                  "description": "the storage blob name"
                },
                {
                  "flags": "--lease <leaseId>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--lease",
                  "description": "the lease ID"
                },
                {
                  "flags": "--snapshot <snapshotTimestamp>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--snapshot",
                  "description": "the snapshot timestamp"
                },
                {
                  "flags": "--sas <sas>",
                  "required": -7,
                  "optional": 0,
                  "bool": true,
                  "long": "--sas",
                  "description": "the shared access signature"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete the specified storage blob",
              "fullName": "storage blob delete",
              "usage": "[options] [container] [blob]",
              "filePath": "commands/storage/storage.blob.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--container <container>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--container",
                  "description": "the storage container name"
                },
                {
                  "flags": "-b, --blob <blobName>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--blob",
                  "description": "the storage blob name"
                },
                {
                  "flags": "--snapshot <snapshotTimestamp>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--snapshot",
                  "description": "the snapshot timestamp"
                },
                {
                  "flags": "--lease <leaseId>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--lease",
                  "description": "the lease ID"
                },
                {
                  "flags": "--sas <sas>",
                  "required": -7,
                  "optional": 0,
                  "bool": true,
                  "long": "--sas",
                  "description": "the shared access signature"
                },
                {
                  "flags": "--delete-snapshots <deleteSnapshots>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "long": "--delete-snapshots",
                  "description": "'include' to delete the base blob and all of its snapshots. 'only' to delete only the blob's snapshots and not the blob itself"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "remove the specified storage blob without confirmation"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "upload",
              "description": "Upload the specified file to storage blob. To upload to large block blob, please run on 64-bit machine with 64-bit node.",
              "fullName": "storage blob upload",
              "usage": "[options] [file] [container] [blob]",
              "filePath": "commands/storage/storage.blob.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-f, --file <file>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--file",
                  "description": "the local file path"
                },
                {
                  "flags": "--container <container>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--container",
                  "description": "the storage container name"
                },
                {
                  "flags": "-b, --blob <blobName>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--blob",
                  "description": "the storage blob name"
                },
                {
                  "flags": "-t, --blobtype <blobtype>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--blobtype",
                  "description": "the storage blob type(block, page, append)"
                },
                {
                  "flags": "-p, --properties <properties>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--properties",
                  "description": "the storage blob properties for uploaded file. Properties are key=value pairs and separated with semicolon(;). Available properties are contentType, contentEncoding, contentLanguage, cacheControl, contentDisposition, contentMD5"
                },
                {
                  "flags": "-m, --metadata <metadata>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--metadata",
                  "description": "the storage blob metadata for uploaded file. Metadata are key=value pairs and separated with semicolon(;)"
                },
                {
                  "flags": "--concurrenttaskcount <concurrenttaskcount>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--concurrenttaskcount",
                  "description": "the maximum number of concurrent upload requests"
                },
                {
                  "flags": "--lease <leaseId>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--lease",
                  "description": "the lease ID"
                },
                {
                  "flags": "--sas <sas>",
                  "required": -7,
                  "optional": 0,
                  "bool": true,
                  "long": "--sas",
                  "description": "the shared access signature"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "overwrite the specified storage blob without confirmation"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "download",
              "description": "Download the specified storage blob",
              "fullName": "storage blob download",
              "usage": "[options] [container] [blob] [destination]",
              "filePath": "commands/storage/storage.blob.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--container <container>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--container",
                  "description": "the storage container name"
                },
                {
                  "flags": "-b, --blob <blobName>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--blob",
                  "description": "the storage blob name"
                },
                {
                  "flags": "--snapshot <snapshotTimestamp>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--snapshot",
                  "description": "the snapshot timestamp"
                },
                {
                  "flags": "--lease <leaseId>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--lease",
                  "description": "the lease ID"
                },
                {
                  "flags": "-d, --destination [destination]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-d",
                  "long": "--destination",
                  "description": "download destination file or directory path"
                },
                {
                  "flags": "-m, --checkmd5",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--checkmd5",
                  "description": "check md5sum for the downloaded file"
                },
                {
                  "flags": "--concurrenttaskcount <concurrenttaskcount>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--concurrenttaskcount",
                  "description": "the maximum number of concurrent download requests"
                },
                {
                  "flags": "--sas <sas>",
                  "required": -7,
                  "optional": 0,
                  "bool": true,
                  "long": "--sas",
                  "description": "the shared access signature"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "overwrite the destination file without confirmation"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "snapshot",
              "description": "Creates a read-only snapshot of the blob",
              "fullName": "storage blob snapshot",
              "usage": "[options] [container] [blob]",
              "filePath": "commands/storage/storage.blob.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--container <container>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--container",
                  "description": "the storage container name"
                },
                {
                  "flags": "-b, --blob <blobName>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--blob",
                  "description": "the storage blob name"
                },
                {
                  "flags": "--lease <leaseId>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--lease",
                  "description": "the lease ID"
                },
                {
                  "flags": "--sas <sas>",
                  "required": -7,
                  "optional": 0,
                  "bool": true,
                  "long": "--sas",
                  "description": "the shared access signature"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "update",
              "description": "Update the properties of the specified storage blob",
              "fullName": "storage blob update",
              "usage": "[options] [container] [blob]",
              "filePath": "commands/storage/storage.blob.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--container <container>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--container",
                  "description": "the storage container name"
                },
                {
                  "flags": "-b, --blob <blobName>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--blob",
                  "description": "the storage blob name"
                },
                {
                  "flags": "-p, --properties <properties>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--properties",
                  "description": "the storage blob properties. Properties are key=value pairs and separated with semicolon(;). Available properties are contentType, contentEncoding, contentLanguage, cacheControl, contentDisposition, contentMD5"
                },
                {
                  "flags": "--lease <leaseId>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--lease",
                  "description": "the lease ID"
                },
                {
                  "flags": "--sas <sas>",
                  "required": -7,
                  "optional": 0,
                  "bool": true,
                  "long": "--sas",
                  "description": "the shared access signature"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            }
          ],
          "categories": {
            "lease": {
              "name": "lease",
              "description": "Commands to manage leases of your storage blob",
              "fullName": "storage blob lease",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "acquire",
                  "description": "Acquire a new lease against your storage blob",
                  "fullName": "storage blob lease acquire",
                  "usage": "[options] [container] [blob] [duration] [proposedId]",
                  "filePath": "commands/storage/storage.blob.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--container <container>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--container",
                      "description": "the storage container name"
                    },
                    {
                      "flags": "-b, --blob <blobName>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-b",
                      "long": "--blob",
                      "description": "the storage blob name"
                    },
                    {
                      "flags": "--duration <duration>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--duration",
                      "description": "the lease duration in seconds (15-60) or negative one (-1) for a lease that never expires"
                    },
                    {
                      "flags": "--proposed-id <proposedId>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--proposed-id",
                      "description": "the proposed lease ID"
                    },
                    {
                      "flags": "--sas <sas>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--sas",
                      "description": "the shared access signature"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "renew",
                  "description": "Renew an existing lease against your storage blob",
                  "fullName": "storage blob lease renew",
                  "usage": "[options] [container] [blob] [lease]",
                  "filePath": "commands/storage/storage.blob.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--container <container>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--container",
                      "description": "the storage container name"
                    },
                    {
                      "flags": "-b, --blob <blobName>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-b",
                      "long": "--blob",
                      "description": "the storage blob name"
                    },
                    {
                      "flags": "--lease <leaseId>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--lease",
                      "description": "the existing lease ID"
                    },
                    {
                      "flags": "--sas <sas>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--sas",
                      "description": "the shared access signature"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "change",
                  "description": "Change an existing lease against your storage blob",
                  "fullName": "storage blob lease change",
                  "usage": "[options] [container] [blob] [lease] [proposedId]",
                  "filePath": "commands/storage/storage.blob.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--container <container>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--container",
                      "description": "the storage container name"
                    },
                    {
                      "flags": "-b, --blob <blobName>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-b",
                      "long": "--blob",
                      "description": "the storage blob name"
                    },
                    {
                      "flags": "--lease <leaseId>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--lease",
                      "description": "the existing lease ID"
                    },
                    {
                      "flags": "--proposed-id <proposedId>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--proposed-id",
                      "description": "the proposed lease ID"
                    },
                    {
                      "flags": "--sas <sas>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--sas",
                      "description": "the shared access signature"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "release",
                  "description": "Release an existing lease against your storage blob",
                  "fullName": "storage blob lease release",
                  "usage": "[options] [container] [blob] [lease]",
                  "filePath": "commands/storage/storage.blob.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--container <container>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--container",
                      "description": "the storage container name"
                    },
                    {
                      "flags": "-b, --blob <blobName>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-b",
                      "long": "--blob",
                      "description": "the storage blob name"
                    },
                    {
                      "flags": "--lease <leaseId>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--lease",
                      "description": "the existing lease ID"
                    },
                    {
                      "flags": "--sas <sas>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--sas",
                      "description": "the shared access signature"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "break",
                  "description": "Break an existing lease against your storage blob",
                  "fullName": "storage blob lease break",
                  "usage": "[options] [container] [blob] [duration]",
                  "filePath": "commands/storage/storage.blob.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--container <container>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--container",
                      "description": "the storage container name"
                    },
                    {
                      "flags": "-b, --blob <blobName>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-b",
                      "long": "--blob",
                      "description": "the storage blob name"
                    },
                    {
                      "flags": "--duration <duration>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--duration",
                      "description": "the proposed duration the lease should continue before it is broken in seconds (0-60)"
                    },
                    {
                      "flags": "--sas <sas>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--sas",
                      "description": "the shared access signature"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "copy": {
              "name": "copy",
              "description": "Commands to manage your blob copy operations",
              "fullName": "storage blob copy",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "start",
                  "description": "Start to copy the resource to the specified storage blob which completes asynchronously",
                  "fullName": "storage blob copy start",
                  "usage": "[options] [sourceUri] [destContainer]",
                  "filePath": "commands/storage/storage.blob.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--source-sas <sourceSas>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-sas",
                      "description": "the shared access signature of the source storage"
                    },
                    {
                      "flags": "--source-uri <sourceUri>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-uri",
                      "description": "the source storage blob or file absolute uri. By providing this option, all other source related options will be ignored."
                    },
                    {
                      "flags": "--source-container <sourceContainer>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-container",
                      "description": "the source storage container name when copies a blob to a blob"
                    },
                    {
                      "flags": "--source-blob <sourceBlob>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-blob",
                      "description": "the source storage blob name when copies a blob to a blob"
                    },
                    {
                      "flags": "--snapshot <snapshotTimestamp>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--snapshot",
                      "description": "the snapshot timestamp if source is a snapshot"
                    },
                    {
                      "flags": "--source-lease <sourceLeaseId>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-lease",
                      "description": "the lease ID of the source blob "
                    },
                    {
                      "flags": "--source-share <sourceShare>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-share",
                      "description": "the source storage share name when copies a file to a blob"
                    },
                    {
                      "flags": "--source-path <sourcePath>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-path",
                      "description": "the source storage file path when copies a file to a blob"
                    },
                    {
                      "flags": "--dest-account-name <destAccountName>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "long": "--dest-account-name",
                      "description": "the destination storage account name"
                    },
                    {
                      "flags": "--dest-account-key <destAccountKey>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--dest-account-key",
                      "description": "the destination storage account key"
                    },
                    {
                      "flags": "--dest-connection-string <destConnectionString>",
                      "required": -26,
                      "optional": 0,
                      "bool": true,
                      "long": "--dest-connection-string",
                      "description": "the destination storage connection string"
                    },
                    {
                      "flags": "--dest-sas <destSas>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--dest-sas",
                      "description": "the shared access signature of the destination storage container or blob"
                    },
                    {
                      "flags": "--dest-container <destContainer>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--dest-container",
                      "description": "the destination storage container name"
                    },
                    {
                      "flags": "--dest-blob <destBlob>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--dest-blob",
                      "description": "the destination storage blob name"
                    },
                    {
                      "flags": "--dest-lease <destLeaseId>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--dest-lease",
                      "description": "the lease ID of the destination blob "
                    },
                    {
                      "flags": "--incremental",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--incremental",
                      "description": "whether start page blob incremental copy or not. If yes, the source must be a page blob snapshot. Refer to https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/incremental-copy-blob for more detailed information."
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "overwrite the destination blob without confirmation"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show the copy status",
                  "fullName": "storage blob copy show",
                  "usage": "[options] [container] [blob]",
                  "filePath": "commands/storage/storage.blob.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--container <container>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--container",
                      "description": "the destination container in the blob copy start operation"
                    },
                    {
                      "flags": "--blob <blob>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--blob",
                      "description": "the destination blob in the blob copy start operation"
                    },
                    {
                      "flags": "--lease <leaseId>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--lease",
                      "description": "the lease ID of the destination blob "
                    },
                    {
                      "flags": "--sas <sas>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--sas",
                      "description": "the shared access signature of the destination storage container or blob"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "stop",
                  "description": "Stop the copy operation",
                  "fullName": "storage blob copy stop",
                  "usage": "[options] [container] [blob] [copyid]",
                  "filePath": "commands/storage/storage.blob.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--container <container>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--container",
                      "description": "the destination container in the blob copy start operation"
                    },
                    {
                      "flags": "--blob <blob>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--blob",
                      "description": "the destination blob in the blob copy start operation"
                    },
                    {
                      "flags": "--lease <leaseId>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--lease",
                      "description": "the lease ID of the destination blob "
                    },
                    {
                      "flags": "--copyid <copyid>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--copyid",
                      "description": "the copy ID which is returned from blob copy start operation"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "sas": {
              "name": "sas",
              "description": "Commands to manage shared access signature of your storage blob",
              "fullName": "storage blob sas",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Generate shared access signature of storage blob",
                  "fullName": "storage blob sas create",
                  "usage": "[options] [container] [blob] [permissions] [expiry]",
                  "filePath": "commands/storage/storage.blob.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--container <container>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--container",
                      "description": "the storage container name"
                    },
                    {
                      "flags": "--blob <blobName>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--blob",
                      "description": "the storage blob name"
                    },
                    {
                      "flags": "--permissions <permissions>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--permissions",
                      "description": "the operation permissions combining symbols of r(Read)/a(Add)/c(Create)/w(Write)/d(Delete)"
                    },
                    {
                      "flags": "--protocol <protocol>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--protocol",
                      "description": "the protocol permitted for a request made with the SAS. Possible values are HttpsOnly and HttpsOrHttp"
                    },
                    {
                      "flags": "--ip-range <ipRange>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-range",
                      "description": "an IP address or a range of IP addresses from which to accept requests. When specifying a range of IP addresses, note that the range is inclusive. For example, specifying 168.1.5.65 or 168.1.5.60-168.1.5.70 on the SAS restricts the request to those IP addresses."
                    },
                    {
                      "flags": "--start <start>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--start",
                      "description": "the UTC time at which the SAS becomes valid"
                    },
                    {
                      "flags": "--expiry <expiry>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--expiry",
                      "description": "the UTC time at which the SAS expires"
                    },
                    {
                      "flags": "--policy <policy>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--policy",
                      "description": "the stored access policy identifier"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "share": {
          "name": "share",
          "description": "Commands to manage your Storage file shares",
          "fullName": "storage share",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a storage file share",
              "fullName": "storage share create",
              "usage": "[options] [share]",
              "filePath": "commands/storage/storage.file.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--share <share>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--share",
                  "description": "the storage file share name"
                },
                {
                  "flags": "--quota <quota>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--quota",
                  "description": "the storage file share quota (in GB)"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show details of the storage file share",
              "fullName": "storage share show",
              "usage": "[options] [share]",
              "filePath": "commands/storage/storage.file.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--share <share>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--share",
                  "description": "the storage file share name"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "set",
              "description": "Set properties of the storage file share",
              "fullName": "storage share set",
              "usage": "[options] [share]",
              "filePath": "commands/storage/storage.file.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--share <share>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--share",
                  "description": "the storage file share name"
                },
                {
                  "flags": "--quota <quota>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--quota",
                  "description": "the storage file share quota (in GB)"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete the specified storage file share",
              "fullName": "storage share delete",
              "usage": "[options] [share]",
              "filePath": "commands/storage/storage.file.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--share <share>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--share",
                  "description": "the storage file share name"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "remove the specified storage file share without confirmation"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "list",
              "description": "List storage shares with prefix",
              "fullName": "storage share list",
              "usage": "[options] [prefix]",
              "filePath": "commands/storage/storage.file.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-p, --prefix <prefix>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--prefix",
                  "description": "the storage share name prefix"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            }
          ],
          "categories": {
            "sas": {
              "name": "sas",
              "description": "Commands to manage shared access signatures of your Storage file shares",
              "fullName": "storage share sas",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Generate shared access signature of storage share",
                  "fullName": "storage share sas create",
                  "usage": "[options] [share] [permissions] [expiry]",
                  "filePath": "commands/storage/storage.file.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--share <share>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--share",
                      "description": "the storage share name"
                    },
                    {
                      "flags": "--permissions <permissions>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--permissions",
                      "description": "the operation permissions combining symbols of r(Read)/w(Write)/d(Delete)/l(List)"
                    },
                    {
                      "flags": "--protocol <protocol>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--protocol",
                      "description": "the protocol permitted for a request made with the SAS. Possible values are HttpsOnly and HttpsOrHttp"
                    },
                    {
                      "flags": "--ip-range <ipRange>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-range",
                      "description": "an IP address or a range of IP addresses from which to accept requests. When specifying a range of IP addresses, note that the range is inclusive. For example, specifying 168.1.5.65 or 168.1.5.60-168.1.5.70 on the SAS restricts the request to those IP addresses."
                    },
                    {
                      "flags": "--start <start>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--start",
                      "description": "the UTC time at which the SAS becomes valid"
                    },
                    {
                      "flags": "--expiry <expiry>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--expiry",
                      "description": "the UTC time at which the SAS expires"
                    },
                    {
                      "flags": "--policy <policy>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--policy",
                      "description": "the stored access policy identifier"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "policy": {
              "name": "policy",
              "description": "Commands to manage stored access policies of your Storage file share",
              "fullName": "storage share policy",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a stored access policy on the share",
                  "fullName": "storage share policy create",
                  "usage": "[options] [share] [name]",
                  "filePath": "commands/storage/storage.file.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--share <share>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--share",
                      "description": "the storage share name"
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "the policy name"
                    },
                    {
                      "flags": "--start <start>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--start",
                      "description": "the UTC time at which the policy becomes valid"
                    },
                    {
                      "flags": "--expiry <expiry>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--expiry",
                      "description": "the UTC time at which the policy expires"
                    },
                    {
                      "flags": "--permissions <permissions>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--permissions",
                      "description": "the operation permissions combining symbols of r(Read)/w(Write)/d(Delete)/l(List)"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a stored access policy on the share",
                  "fullName": "storage share policy show",
                  "usage": "[options] [share] [name]",
                  "filePath": "commands/storage/storage.file.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--share <share>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--share",
                      "description": "the storage share name"
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "the policy name"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List stored access policies on the share",
                  "fullName": "storage share policy list",
                  "usage": "[options] [share]",
                  "filePath": "commands/storage/storage.file.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--share <share>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--share",
                      "description": "the storage share name"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Set a stored access policy on the share",
                  "fullName": "storage share policy set",
                  "usage": "[options] [share] [name]",
                  "filePath": "commands/storage/storage.file.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--share <share>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--share",
                      "description": "the storage share name"
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "the policy name"
                    },
                    {
                      "flags": "--start <start>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--start",
                      "description": "the UTC time at which the policy becomes valid and passing two spaces means to remove the existing setting"
                    },
                    {
                      "flags": "--expiry <expiry>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--expiry",
                      "description": "the UTC time at which the policy expires and passing two spaces means to remove the existing setting"
                    },
                    {
                      "flags": "--permissions <permissions>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--permissions",
                      "description": "the operation permissions combining symbols of r(Read)/w(Write)/d(Delete)/l(List) and passing two spaces means to remove the existing setting"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a stored access policy on the share",
                  "fullName": "storage share policy delete",
                  "usage": "[options] [share] [name]",
                  "filePath": "commands/storage/storage.file.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--share <share>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--share",
                      "description": "the storage share name"
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "the policy name"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "file": {
          "name": "file",
          "description": "Commands to manage your Storage files",
          "fullName": "storage file",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List storage files in the specified share under specific path",
              "fullName": "storage file list",
              "usage": "[options] [share] [path]",
              "filePath": "commands/storage/storage.file.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--share <share>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--share",
                  "description": "the storage share name"
                },
                {
                  "flags": "-p, --path <path>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--path",
                  "description": "the path to be listed"
                },
                {
                  "flags": "--prefix <prefix>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--prefix",
                  "description": "the storage file name prefix"
                },
                {
                  "flags": "--sas <sas>",
                  "required": -7,
                  "optional": 0,
                  "bool": true,
                  "long": "--sas",
                  "description": "the shared access signature of the storage file share"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete the specified storage file",
              "fullName": "storage file delete",
              "usage": "[options] [share] [path]",
              "filePath": "commands/storage/storage.file.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--share <share>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--share",
                  "description": "the storage share name"
                },
                {
                  "flags": "-p, --path <path>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--path",
                  "description": "the path to the storage file"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "remove the specified storage file without confirmation"
                },
                {
                  "flags": "--sas <sas>",
                  "required": -7,
                  "optional": 0,
                  "bool": true,
                  "long": "--sas",
                  "description": "the shared access signature of the storage file share"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "upload",
              "description": "Upload the specified local file to storage",
              "fullName": "storage file upload",
              "usage": "[options] [source] [share] [path]",
              "filePath": "commands/storage/storage.file.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-s, --source <source>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--source",
                  "description": "the local file path"
                },
                {
                  "flags": "--share <share>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--share",
                  "description": "the storage share name"
                },
                {
                  "flags": "-p, --path <path>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--path",
                  "description": "the path to the storage file"
                },
                {
                  "flags": "--concurrenttaskcount <concurrenttaskcount>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--concurrenttaskcount",
                  "description": "the maximum number of concurrent upload requests"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "overwrite the specified storage file without confirmation"
                },
                {
                  "flags": "--sas <sas>",
                  "required": -7,
                  "optional": 0,
                  "bool": true,
                  "long": "--sas",
                  "description": "the shared access signature of the storage file share"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "download",
              "description": "Download the specified storage file",
              "fullName": "storage file download",
              "usage": "[options] [share] [path] [destination]",
              "filePath": "commands/storage/storage.file.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--share <share>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--share",
                  "description": "the storage share name"
                },
                {
                  "flags": "-p, --path <path>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--path",
                  "description": "the path to the storage file"
                },
                {
                  "flags": "-d, --destination <destination>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--destination",
                  "description": "path to the destination file or directory"
                },
                {
                  "flags": "-m, --checkmd5",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--checkmd5",
                  "description": "check md5sum for the downloaded file"
                },
                {
                  "flags": "--concurrenttaskcount <concurrenttaskcount>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--concurrenttaskcount",
                  "description": "the maximum number of concurrent download requests"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "overwrite the destination file without confirmation"
                },
                {
                  "flags": "--sas <sas>",
                  "required": -7,
                  "optional": 0,
                  "bool": true,
                  "long": "--sas",
                  "description": "the shared access signature of the storage file share"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            }
          ],
          "categories": {
            "copy": {
              "name": "copy",
              "description": "Commands to manage your file copy operations",
              "fullName": "storage file copy",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "start",
                  "description": "Start to copy the resource to the specified storage file which completes asynchronously",
                  "fullName": "storage file copy start",
                  "usage": "[options] [sourceUri] [destShare]",
                  "filePath": "commands/storage/storage.file.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--source-sas <sourceSas>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-sas",
                      "description": "the shared access signature of the source storage"
                    },
                    {
                      "flags": "--source-uri <sourceUri>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-uri",
                      "description": "the source storage blob or file absolute uri"
                    },
                    {
                      "flags": "--source-share <sourceShare>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-share",
                      "description": "the source storage share name when copies a file to a blob"
                    },
                    {
                      "flags": "--source-path <sourcePath>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-path",
                      "description": "the source storage file path when copies a file to a blob"
                    },
                    {
                      "flags": "--source-container <sourceContainer>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-container",
                      "description": "the source storage container name when copies a blob to a blob"
                    },
                    {
                      "flags": "--source-blob <sourceBlob>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-blob",
                      "description": "the source storage blob name when copies a blob to a blob"
                    },
                    {
                      "flags": "--dest-account-name <destAccountName>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "long": "--dest-account-name",
                      "description": "the destination storage account name"
                    },
                    {
                      "flags": "--dest-account-key <destAccountKey>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--dest-account-key",
                      "description": "the destination storage account key"
                    },
                    {
                      "flags": "--dest-connection-string <destConnectionString>",
                      "required": -26,
                      "optional": 0,
                      "bool": true,
                      "long": "--dest-connection-string",
                      "description": "the destination storage connection string"
                    },
                    {
                      "flags": "--dest-sas <destSas>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--dest-sas",
                      "description": "the shared access signature of the destination storage share or file"
                    },
                    {
                      "flags": "--dest-share <destShare>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--dest-share",
                      "description": "the destination storage share name"
                    },
                    {
                      "flags": "--dest-path <destPath>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--dest-path",
                      "description": "the destination storage file path"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "overwrite the destination file without confirmation"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show the copy status",
                  "fullName": "storage file copy show",
                  "usage": "[options] [share] [path]",
                  "filePath": "commands/storage/storage.file.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--share <share>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--share",
                      "description": "the destination share in the file copy start operation"
                    },
                    {
                      "flags": "--path <path>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--path",
                      "description": "the destination file path in the file copy start operation"
                    },
                    {
                      "flags": "--sas <sas>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--sas",
                      "description": "the shared access signature of the destination storage share or file"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "stop",
                  "description": "Stop the copy operation",
                  "fullName": "storage file copy stop",
                  "usage": "[options] [share] [path] [copyid]",
                  "filePath": "commands/storage/storage.file.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--share <share>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--share",
                      "description": "the destination share in the file copy start operation"
                    },
                    {
                      "flags": "--path <path>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--path",
                      "description": "the destination file path in the file copy start operation"
                    },
                    {
                      "flags": "--copyid <copyid>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--copyid",
                      "description": "the copy ID which is returned from file copy start operation"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "sas": {
              "name": "sas",
              "description": "Commands to manage shared access signatures of your Storage file",
              "fullName": "storage file sas",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Generate shared access signature of storage file",
                  "fullName": "storage file sas create",
                  "usage": "[options] [share] [path] [permissions] [expiry]",
                  "filePath": "commands/storage/storage.file.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--share <share>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--share",
                      "description": "the storage share name"
                    },
                    {
                      "flags": "-p, --path <path>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--path",
                      "description": "the path to the storage file"
                    },
                    {
                      "flags": "--permissions <permissions>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--permissions",
                      "description": "the operation permissions combining symbols of r(Read)/w(Write)/d(Delete)"
                    },
                    {
                      "flags": "--protocol <protocol>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--protocol",
                      "description": "the protocol permitted for a request made with the SAS. Possible values are HttpsOnly and HttpsOrHttp"
                    },
                    {
                      "flags": "--ip-range <ipRange>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-range",
                      "description": "an IP address or a range of IP addresses from which to accept requests. When specifying a range of IP addresses, note that the range is inclusive. For example, specifying 168.1.5.65 or 168.1.5.60-168.1.5.70 on the SAS restricts the request to those IP addresses."
                    },
                    {
                      "flags": "--start <start>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--start",
                      "description": "the UTC time at which the SAS becomes valid"
                    },
                    {
                      "flags": "--expiry <expiry>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--expiry",
                      "description": "the UTC time at which the SAS expires"
                    },
                    {
                      "flags": "--policy <policy>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--policy",
                      "description": "the stored access policy identifier"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "directory": {
          "name": "directory",
          "description": "Commands to manage your Storage file directory",
          "fullName": "storage directory",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a storage file directory",
              "fullName": "storage directory create",
              "usage": "[options] [share] [path]",
              "filePath": "commands/storage/storage.file.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--share <share>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--share",
                  "description": "the storage file share name"
                },
                {
                  "flags": "-p, --path <path>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--path",
                  "description": "the path to the storage file directory to be created"
                },
                {
                  "flags": "--sas <sas>",
                  "required": -7,
                  "optional": 0,
                  "bool": true,
                  "long": "--sas",
                  "description": "the shared access signature of the storage file share"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete the specified storage file directory",
              "fullName": "storage directory delete",
              "usage": "[options] [share] [path]",
              "filePath": "commands/storage/storage.file.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--share <share>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--share",
                  "description": "the storage share name"
                },
                {
                  "flags": "-p, --path <path>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--path",
                  "description": "the path to the storage file directory to be deleted"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "remove the specified storage file directory without confirmation"
                },
                {
                  "flags": "--sas <sas>",
                  "required": -7,
                  "optional": 0,
                  "bool": true,
                  "long": "--sas",
                  "description": "the shared access signature of the storage file share"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            }
          ],
          "categories": {}
        },
        "queue": {
          "name": "queue",
          "description": "Commands to manage your Storage queues",
          "fullName": "storage queue",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a storage queue",
              "fullName": "storage queue create",
              "usage": "[options] [queue]",
              "filePath": "commands/storage/storage.queue.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--queue <queue>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--queue",
                  "description": "the storage queue name"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "list",
              "description": "List storage queues with wildcard",
              "fullName": "storage queue list",
              "usage": "[options] [prefix]",
              "filePath": "commands/storage/storage.queue.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-p, --prefix <prefix>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--prefix",
                  "description": "the storage queue name prefix"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show details of the storage able",
              "fullName": "storage queue show",
              "usage": "[options] [queue]",
              "filePath": "commands/storage/storage.queue.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--queue <queue>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--queue",
                  "description": "the storage queue name"
                },
                {
                  "flags": "--sas <sas>",
                  "required": -7,
                  "optional": 0,
                  "bool": true,
                  "long": "--sas",
                  "description": "the shared access signature of the storage queue"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete the specified storage queue",
              "fullName": "storage queue delete",
              "usage": "[options] [queue]",
              "filePath": "commands/storage/storage.queue.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--queue <queue>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--queue",
                  "description": "the storage queue name"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "remove the specified storage queue without confirmation"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            }
          ],
          "categories": {
            "sas": {
              "name": "sas",
              "description": "Commands to manage shared access signatures of your Storage queue",
              "fullName": "storage queue sas",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Generate shared access signature of storage queue",
                  "fullName": "storage queue sas create",
                  "usage": "[options] [queue] [permissions] [expiry]",
                  "filePath": "commands/storage/storage.queue.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--queue <queue>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--queue",
                      "description": "the storage queue name"
                    },
                    {
                      "flags": "--permissions <permissions>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--permissions",
                      "description": "the operation permissions combining symbols of r(Read)/a(Add)/u(Update)/p(Process)"
                    },
                    {
                      "flags": "--protocol <protocol>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--protocol",
                      "description": "the protocol permitted for a request made with the SAS. Possible values are HttpsOnly and HttpsOrHttp"
                    },
                    {
                      "flags": "--ip-range <ipRange>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-range",
                      "description": "an IP address or a range of IP addresses from which to accept requests. When specifying a range of IP addresses, note that the range is inclusive. For example, specifying 168.1.5.65 or 168.1.5.60-168.1.5.70 on the SAS restricts the request to those IP addresses."
                    },
                    {
                      "flags": "--start <start>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--start",
                      "description": "the UTC time at which the SAS becomes valid"
                    },
                    {
                      "flags": "--expiry <expiry>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--expiry",
                      "description": "the UTC time at which the SAS expires"
                    },
                    {
                      "flags": "--policy <policy>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--policy",
                      "description": "the stored access policy identifier"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "policy": {
              "name": "policy",
              "description": "Commands to manage stored access policies of your Storage queue",
              "fullName": "storage queue policy",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a stored access policy on the queue",
                  "fullName": "storage queue policy create",
                  "usage": "[options] [queue] [name]",
                  "filePath": "commands/storage/storage.queue.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--queue <queue>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--queue",
                      "description": "the storage queue name"
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "the policy name"
                    },
                    {
                      "flags": "--start <start>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--start",
                      "description": "the UTC time at which the policy becomes valid"
                    },
                    {
                      "flags": "--expiry <expiry>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--expiry",
                      "description": "the UTC time at which the policy expires"
                    },
                    {
                      "flags": "--permissions <permissions>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--permissions",
                      "description": "the operation permissions combining symbols of r(Read)/a(Add)/u(Update)/p(Process)"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a stored access policy on the queue",
                  "fullName": "storage queue policy show",
                  "usage": "[options] [queue] [name]",
                  "filePath": "commands/storage/storage.queue.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--queue <queue>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--queue",
                      "description": "the storage queue name"
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "the policy name"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List stored access policies on the queue",
                  "fullName": "storage queue policy list",
                  "usage": "[options] [queue]",
                  "filePath": "commands/storage/storage.queue.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--queue <queue>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--queue",
                      "description": "the storage queue name"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Set a stored access policy on the queue",
                  "fullName": "storage queue policy set",
                  "usage": "[options] [queue] [name]",
                  "filePath": "commands/storage/storage.queue.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--queue <queue>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--queue",
                      "description": "the storage queue name"
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "the policy name"
                    },
                    {
                      "flags": "--start <start>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--start",
                      "description": "the UTC time at which the policy becomes valid and passing two spaces means to remove the existing setting"
                    },
                    {
                      "flags": "--expiry <expiry>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--expiry",
                      "description": "the UTC time at which the policy expires and passing two spaces means to remove the existing setting"
                    },
                    {
                      "flags": "--permissions <permissions>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--permissions",
                      "description": "the operation permissions combining symbols of r(Read)/a(Add)/u(Update)/p(Process) and passing two spaces means to remove the existing setting"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a stored access policy on the queue",
                  "fullName": "storage queue policy delete",
                  "usage": "[options] [queue] [name]",
                  "filePath": "commands/storage/storage.queue.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--queue <queue>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--queue",
                      "description": "the storage queue name"
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "the policy name"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "logging": {
          "name": "logging",
          "description": "Commands to manage your Storage logging properties",
          "fullName": "storage logging",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "show",
              "description": "Show the logging properties of the storage services ",
              "fullName": "storage logging show",
              "usage": "[options]",
              "filePath": "commands/storage/storage.service.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--blob",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--blob",
                  "description": "show logging properties for blob service"
                },
                {
                  "flags": "--table",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--table",
                  "description": "show logging properties for table service"
                },
                {
                  "flags": "--queue",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--queue",
                  "description": "show logging properties for queue service"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "set",
              "description": "Set the logging properties of the storage service",
              "fullName": "storage logging set",
              "usage": "[options]",
              "filePath": "commands/storage/storage.service.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--blob",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--blob",
                  "description": "set logging properties for blob service"
                },
                {
                  "flags": "--table",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--table",
                  "description": "set logging properties for table service"
                },
                {
                  "flags": "--queue",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--queue",
                  "description": "set logging properties for queue service"
                },
                {
                  "flags": "--version <version>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "long": "--version",
                  "description": "the version string"
                },
                {
                  "flags": "--retention <retention>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--retention",
                  "description": "set logging retention in days"
                },
                {
                  "flags": "--read",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--read",
                  "description": "enable logging for read requests"
                },
                {
                  "flags": "--read-off",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--read-off",
                  "description": "disable logging for read requests"
                },
                {
                  "flags": "--write",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--write",
                  "description": "enable logging for write requests"
                },
                {
                  "flags": "--write-off",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--write-off",
                  "description": "disable logging for write requests"
                },
                {
                  "flags": "--delete",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--delete",
                  "description": "enable logging for delete requests"
                },
                {
                  "flags": "--delete-off",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--delete-off",
                  "description": "disable logging for delete requests"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            }
          ],
          "categories": {}
        },
        "metrics": {
          "name": "metrics",
          "description": "Commands to manage your Storage metrics properties",
          "fullName": "storage metrics",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "show",
              "description": "Show the metrics properties of the storage services ",
              "fullName": "storage metrics show",
              "usage": "[options]",
              "filePath": "commands/storage/storage.service.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--blob",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--blob",
                  "description": "show metrics properties for blob service"
                },
                {
                  "flags": "--table",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--table",
                  "description": "show metrics properties for table service"
                },
                {
                  "flags": "--queue",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--queue",
                  "description": "show metrics properties for queue service"
                },
                {
                  "flags": "--file",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--file",
                  "description": "show metrics properties for file service"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "set",
              "description": "Set the metrics properties of the storage service",
              "fullName": "storage metrics set",
              "usage": "[options]",
              "filePath": "commands/storage/storage.service.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--blob",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--blob",
                  "description": "set metrics properties for blob service"
                },
                {
                  "flags": "--table",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--table",
                  "description": "set metrics properties for table service"
                },
                {
                  "flags": "--queue",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--queue",
                  "description": "set metrics properties for queue service"
                },
                {
                  "flags": "--file",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--file",
                  "description": "set metrics properties for file service"
                },
                {
                  "flags": "--version <version>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "long": "--version",
                  "description": "the version string"
                },
                {
                  "flags": "--retention <retention>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--retention",
                  "description": "set metrics retention in days"
                },
                {
                  "flags": "--hour",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--hour",
                  "description": "set hourly metrics properties"
                },
                {
                  "flags": "--hour-off",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--hour-off",
                  "description": "turn off hourly metrics properties"
                },
                {
                  "flags": "--minute",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--minute",
                  "description": "set minute metrics properties"
                },
                {
                  "flags": "--minute-off",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--minute-off",
                  "description": "turn off minute metrics properties"
                },
                {
                  "flags": "--api",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--api",
                  "description": "include API in metrics "
                },
                {
                  "flags": "--api-off",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--api-off",
                  "description": "exclude API from metrics"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            }
          ],
          "categories": {}
        },
        "cors": {
          "name": "cors",
          "description": "Commands to manage your Storage CORS (Cross-Origin Resource Sharing)",
          "fullName": "storage cors",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "set",
              "description": "Set the CORS rules of the storage service",
              "fullName": "storage cors set",
              "usage": "[options]",
              "filePath": "commands/storage/storage.service.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--blob",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--blob",
                  "description": "set CORS rules for blob service"
                },
                {
                  "flags": "--table",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--table",
                  "description": "set CORS rules for table service"
                },
                {
                  "flags": "--queue",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--queue",
                  "description": "set CORS rules for queue service"
                },
                {
                  "flags": "--file",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--file",
                  "description": "set CORS rules for file service"
                },
                {
                  "flags": "--cors <cors>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--cors",
                  "description": "the CORS rules array in json format"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show the CORS rules of the storage service",
              "fullName": "storage cors show",
              "usage": "[options]",
              "filePath": "commands/storage/storage.service.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--blob",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--blob",
                  "description": "show CORS rules for blob service"
                },
                {
                  "flags": "--table",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--table",
                  "description": "show CORS rules for table service"
                },
                {
                  "flags": "--queue",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--queue",
                  "description": "show CORS rules for queue service"
                },
                {
                  "flags": "--file",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--file",
                  "description": "show CORS rules for file service"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete all the CORS rules of the storage service",
              "fullName": "storage cors delete",
              "usage": "[options]",
              "filePath": "commands/storage/storage.service.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--blob",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--blob",
                  "description": "delete CORS rules for blob service"
                },
                {
                  "flags": "--table",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--table",
                  "description": "delete CORS rules for table service"
                },
                {
                  "flags": "--queue",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--queue",
                  "description": "delete CORS rules for queue service"
                },
                {
                  "flags": "--file",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--file",
                  "description": "delete CORS rules for file service"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "delete the CORS rules without confirmation"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            }
          ],
          "categories": {}
        },
        "table": {
          "name": "table",
          "description": "Commands to manage your Storage tables",
          "fullName": "storage table",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a storage table",
              "fullName": "storage table create",
              "usage": "[options] [table]",
              "filePath": "commands/storage/storage.table.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--table <table>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--table",
                  "description": "the storage table name"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "list",
              "description": "List storage tables with wildcard",
              "fullName": "storage table list",
              "usage": "[options] [prefix]",
              "filePath": "commands/storage/storage.table.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-p, --prefix <prefix>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--prefix",
                  "description": "the storage table name prefix"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show details of the storage able",
              "fullName": "storage table show",
              "usage": "[options] [table]",
              "filePath": "commands/storage/storage.table.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--table <table>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--table",
                  "description": "the storage table name"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete the specified storage table",
              "fullName": "storage table delete",
              "usage": "[options] [table]",
              "filePath": "commands/storage/storage.table.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--table <table>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--table",
                  "description": "the storage table name"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "remove the specified storage table without confirmation"
                },
                {
                  "flags": "-a, --account-name <accountName>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--account-name",
                  "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                },
                {
                  "flags": "-k, --account-key <accountKey>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--account-key",
                  "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                },
                {
                  "flags": "-c, --connection-string <connectionString>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-string",
                  "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "run storage command in debug mode"
                }
              ]
            }
          ],
          "categories": {
            "sas": {
              "name": "sas",
              "description": "Commands to manage shared access signatures of your Storage table",
              "fullName": "storage table sas",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Generate a shared access signature of storage table",
                  "fullName": "storage table sas create",
                  "usage": "[options] [table] [permissions] [expiry]",
                  "filePath": "commands/storage/storage.table.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--table <table>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--table",
                      "description": "the storage table name"
                    },
                    {
                      "flags": "--permissions <permissions>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--permissions",
                      "description": "the operation permissions combining symbols of r(Query)/a(Add)/u(Update)/d(Delete)"
                    },
                    {
                      "flags": "--protocol <protocol>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--protocol",
                      "description": "the protocol permitted for a request made with the SAS. Possible values are HttpsOnly and HttpsOrHttp"
                    },
                    {
                      "flags": "--ip-range <ipRange>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-range",
                      "description": "an IP address or a range of IP addresses from which to accept requests. When specifying a range of IP addresses, note that the range is inclusive. For example, specifying 168.1.5.65 or 168.1.5.60-168.1.5.70 on the SAS restricts the request to those IP addresses."
                    },
                    {
                      "flags": "--start <start>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--start",
                      "description": "the UTC time at which the SAS becomes valid"
                    },
                    {
                      "flags": "--expiry <expiry>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--expiry",
                      "description": "the UTC time at which the SAS expires"
                    },
                    {
                      "flags": "--policy <policy>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--policy",
                      "description": "the stored access policy identifier"
                    },
                    {
                      "flags": "--start-pk <startPk>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--start-pk",
                      "description": "the inclusive starting partition key"
                    },
                    {
                      "flags": "--end-pk <endPk>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--end-pk",
                      "description": "the inclusive ending partition key"
                    },
                    {
                      "flags": "--start-rk <startRk>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--start-rk",
                      "description": "the inclusive starting row key"
                    },
                    {
                      "flags": "--end-rk <endRk>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--end-rk",
                      "description": "the inclusive ending row key"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "policy": {
              "name": "policy",
              "description": "Commands to manage stored access policies of your Storage table",
              "fullName": "storage table policy",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a stored access policy on the table",
                  "fullName": "storage table policy create",
                  "usage": "[options] [table] [name]",
                  "filePath": "commands/storage/storage.table.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--table <table>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--table",
                      "description": "the storage table name"
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "the policy name"
                    },
                    {
                      "flags": "--start <start>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--start",
                      "description": "the UTC time at which the policy becomes valid"
                    },
                    {
                      "flags": "--expiry <expiry>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--expiry",
                      "description": "the UTC time at which the policy expires"
                    },
                    {
                      "flags": "--permissions <permissions>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--permissions",
                      "description": "the operation permissions combining symbols of r(Query)/a(Add)/u(Update)/d(Delete)"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a stored access policy on the table",
                  "fullName": "storage table policy show",
                  "usage": "[options] [table] [name]",
                  "filePath": "commands/storage/storage.table.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--table <table>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--table",
                      "description": "the storage table name"
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "the policy name"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List stored access policies on the table",
                  "fullName": "storage table policy list",
                  "usage": "[options] [table]",
                  "filePath": "commands/storage/storage.table.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--table <table>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--table",
                      "description": "the storage table name"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Set a stored access policy on the table",
                  "fullName": "storage table policy set",
                  "usage": "[options] [table] [name]",
                  "filePath": "commands/storage/storage.table.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--table <table>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--table",
                      "description": "the storage table name"
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "the policy name"
                    },
                    {
                      "flags": "--start <start>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--start",
                      "description": "the UTC time at which the policy becomes valid and passing two spaces means to remove the existing setting"
                    },
                    {
                      "flags": "--expiry <expiry>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--expiry",
                      "description": "the UTC time at which the policy expires and passing two spaces means to remove the existing setting"
                    },
                    {
                      "flags": "--permissions <permissions>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--permissions",
                      "description": "the operation permissions combining symbols of r(Query)/a(Add)/u(Update)/d(Delete) and passing two spaces means to remove the existing setting"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a stored access policy on the table",
                  "fullName": "storage table policy delete",
                  "usage": "[options] [table] [name]",
                  "filePath": "commands/storage/storage.table.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--table <table>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--table",
                      "description": "the storage table name"
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "the policy name"
                    },
                    {
                      "flags": "-a, --account-name <accountName>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-name",
                      "description": "the storage account name or omit it to use environment variable [AZURE_STORAGE_ACCOUNT]"
                    },
                    {
                      "flags": "-k, --account-key <accountKey>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--account-key",
                      "description": "the storage account key or omit it to use environment variable [AZURE_STORAGE_ACCESS_KEY]"
                    },
                    {
                      "flags": "-c, --connection-string <connectionString>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--connection-string",
                      "description": "the storage connection string or omit it to use environment variable [AZURE_STORAGE_CONNECTION_STRING]"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        }
      }
    },
    "acs": {
      "name": "acs",
      "description": "Commands to manage your container services.  ",
      "fullName": "acs",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "scale",
          "description": "The operation to scale a container service.",
          "fullName": "acs scale",
          "usage": "[options] <resource-group> <name> <new-agent-count>",
          "filePath": "commands/arm/acs/acs.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-o, --new-agent-count <new-agent-count>",
              "required": -23,
              "optional": 0,
              "bool": true,
              "short": "-o",
              "long": "--new-agent-count",
              "description": "New agent count"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "create",
          "description": "Creates or updates a container service.",
          "fullName": "acs create",
          "usage": "[options] <resource-group> <name> <parameters>",
          "filePath": "commands/arm/compute/containerServices.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-p, --parameters <parameters>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--parameters",
              "description": "A string of parameters in JSON format"
            },
            {
              "flags": "--parameter-file <parameter-file>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "long": "--parameter-file",
              "description": "The text file that contains input parameter object in JSON format"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "delete",
          "description": "Deletes the specified container service.",
          "fullName": "acs delete",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/compute/containerServices.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "show",
          "description": "Gets the properties of the specified container service.",
          "fullName": "acs show",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/compute/containerServices.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "list",
          "description": "Gets a list of container services in the specified resource group.",
          "fullName": "acs list",
          "usage": "[options] <resource-group>",
          "filePath": "commands/arm/compute/containerServices.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        }
      ],
      "categories": {
        "config": {
          "name": "config",
          "description": "Commands to manage configuration of container-services in the parameter file.",
          "fullName": "acs config",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Generate containerServicesCreateOrUpdate parameter string or files.",
              "fullName": "acs config create",
              "usage": "[options]",
              "filePath": "commands/arm/compute/containerServices.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                }
              ]
            },
            {
              "name": "patch",
              "description": "Command to patch containerServicesCreateOrUpdate parameter JSON file.",
              "fullName": "acs config patch",
              "usage": "[options]",
              "filePath": "commands/arm/compute/containerServices.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                },
                {
                  "flags": "--operation <operation>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--operation",
                  "description": "The JSON patch operation: add, remove, or replace."
                },
                {
                  "flags": "--path <path>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--path",
                  "description": "The JSON data path, e.g.: \"foo/1\"."
                },
                {
                  "flags": "--value <value>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--value",
                  "description": "The JSON value."
                },
                {
                  "flags": "--parse",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--parse",
                  "description": "Parse the JSON value to object."
                }
              ]
            }
          ],
          "categories": {
            "container-service": {
              "name": "container-service",
              "description": "Commands to configure container-service of acs in config file.",
              "fullName": "acs config container-service",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set container-service in config string or files, e.g. \r\n{\r\n  \"provisioningState\":\"\",\r\n  \"orchestratorProfile\":{\r\n    \"orchestratorType\":\"\"\r\n  },\r\n  \"customProfile\":{\r\n    \"orchestrator\":\"\"\r\n  },\r\n  \"servicePrincipalProfile\":{\r\n    \"clientId\":\"\",\r\n    \"secret\":\"\"\r\n  },\r\n  \"masterProfile\":{\r\n    \"count\":null,\r\n    \"dnsPrefix\":\"\",\r\n    \"fqdn\":\"\"\r\n  },\r\n  \"agentPoolProfiles\":[\r\n    {\r\n      \"name\":\"\",\r\n      \"count\":\"\",\r\n      \"vmSize\":\"\",\r\n      \"dnsPrefix\":\"\",\r\n      \"fqdn\":\"\"\r\n    }\r\n  ],\r\n  \"windowsProfile\":{\r\n    \"adminUsername\":\"\",\r\n    \"adminPassword\":\"\"\r\n  },\r\n  \"linuxProfile\":{\r\n    \"adminUsername\":\"\",\r\n    \"ssh\":{\r\n      \"publicKeys\":[\r\n        {\r\n          \"keyData\":\"\"\r\n        }\r\n      ]\r\n    }\r\n  },\r\n  \"diagnosticsProfile\":{\r\n    \"vmDiagnostics\":{\r\n      \"enabled\":false,\r\n      \"storageUri\":\"\"\r\n    }\r\n  },\r\n  \"id\":null,\r\n  \"name\":null,\r\n  \"type\":null,\r\n  \"location\":\"\",\r\n  \"tags\":{\r\n  }\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config container-service set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--provisioning-state <provisioningState>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--provisioning-state",
                      "description": "Set the provisioning-state value."
                    },
                    {
                      "flags": "--orchestrator-profile <orchestratorProfile>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "long": "--orchestrator-profile",
                      "description": "Set the orchestrator-profile value."
                    },
                    {
                      "flags": "--custom-profile <customProfile>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--custom-profile",
                      "description": "Set the custom-profile value."
                    },
                    {
                      "flags": "--service-principal-profile <servicePrincipalProfile>",
                      "required": -29,
                      "optional": 0,
                      "bool": true,
                      "long": "--service-principal-profile",
                      "description": "Set the service-principal-profile value."
                    },
                    {
                      "flags": "--master-profile <masterProfile>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--master-profile",
                      "description": "Set the master-profile value."
                    },
                    {
                      "flags": "--agent-pool-profiles <agentPoolProfiles>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "long": "--agent-pool-profiles",
                      "description": "Set the agent-pool-profiles value."
                    },
                    {
                      "flags": "--windows-profile <windowsProfile>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--windows-profile",
                      "description": "Set the windows-profile value."
                    },
                    {
                      "flags": "--linux-profile <linuxProfile>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--linux-profile",
                      "description": "Set the linux-profile value."
                    },
                    {
                      "flags": "--diagnostics-profile <diagnosticsProfile>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "long": "--diagnostics-profile",
                      "description": "Set the diagnostics-profile value."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--type <type>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Set the type value."
                    },
                    {
                      "flags": "--location <location>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--location",
                      "description": "Set the location value."
                    },
                    {
                      "flags": "--tags <tags>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--tags",
                      "description": "Set the tags value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove container-service in config string or files, e.g. \r\n{\r\n  \"provisioningState\":\"\",\r\n  \"orchestratorProfile\":{\r\n    \"orchestratorType\":\"\"\r\n  },\r\n  \"customProfile\":{\r\n    \"orchestrator\":\"\"\r\n  },\r\n  \"servicePrincipalProfile\":{\r\n    \"clientId\":\"\",\r\n    \"secret\":\"\"\r\n  },\r\n  \"masterProfile\":{\r\n    \"count\":null,\r\n    \"dnsPrefix\":\"\",\r\n    \"fqdn\":\"\"\r\n  },\r\n  \"agentPoolProfiles\":[\r\n    {\r\n      \"name\":\"\",\r\n      \"count\":\"\",\r\n      \"vmSize\":\"\",\r\n      \"dnsPrefix\":\"\",\r\n      \"fqdn\":\"\"\r\n    }\r\n  ],\r\n  \"windowsProfile\":{\r\n    \"adminUsername\":\"\",\r\n    \"adminPassword\":\"\"\r\n  },\r\n  \"linuxProfile\":{\r\n    \"adminUsername\":\"\",\r\n    \"ssh\":{\r\n      \"publicKeys\":[\r\n        {\r\n          \"keyData\":\"\"\r\n        }\r\n      ]\r\n    }\r\n  },\r\n  \"diagnosticsProfile\":{\r\n    \"vmDiagnostics\":{\r\n      \"enabled\":false,\r\n      \"storageUri\":\"\"\r\n    }\r\n  },\r\n  \"id\":null,\r\n  \"name\":null,\r\n  \"type\":null,\r\n  \"location\":\"\",\r\n  \"tags\":{\r\n  }\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config container-service delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--provisioning-state",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--provisioning-state",
                      "description": "Remove the provisioning-state value."
                    },
                    {
                      "flags": "--orchestrator-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--orchestrator-profile",
                      "description": "Remove the orchestrator-profile value."
                    },
                    {
                      "flags": "--custom-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--custom-profile",
                      "description": "Remove the custom-profile value."
                    },
                    {
                      "flags": "--service-principal-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--service-principal-profile",
                      "description": "Remove the service-principal-profile value."
                    },
                    {
                      "flags": "--master-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--master-profile",
                      "description": "Remove the master-profile value."
                    },
                    {
                      "flags": "--agent-pool-profiles",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--agent-pool-profiles",
                      "description": "Remove the agent-pool-profiles value."
                    },
                    {
                      "flags": "--windows-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--windows-profile",
                      "description": "Remove the windows-profile value."
                    },
                    {
                      "flags": "--linux-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--linux-profile",
                      "description": "Remove the linux-profile value."
                    },
                    {
                      "flags": "--diagnostics-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--diagnostics-profile",
                      "description": "Remove the diagnostics-profile value."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Remove the type value."
                    },
                    {
                      "flags": "--location",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--location",
                      "description": "Remove the location value."
                    },
                    {
                      "flags": "--tags",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--tags",
                      "description": "Remove the tags value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "orchestrator-profile": {
              "name": "orchestrator-profile",
              "description": "Commands to configure orchestrator-profile of acs in config file.",
              "fullName": "acs config orchestrator-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set orchestrator-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"orchestratorProfile\" : {\r\n             \"orchestratorType\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config orchestrator-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--orchestrator-type <orchestratorType>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "long": "--orchestrator-type",
                      "description": "Set the orchestrator-type value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove orchestrator-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"orchestratorProfile\" : {\r\n             \"orchestratorType\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config orchestrator-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--orchestrator-type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--orchestrator-type",
                      "description": "Remove the orchestrator-type value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "custom-profile": {
              "name": "custom-profile",
              "description": "Commands to configure custom-profile of acs in config file.",
              "fullName": "acs config custom-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set custom-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"customProfile\" : {\r\n             \"orchestrator\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config custom-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--orchestrator <orchestrator>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--orchestrator",
                      "description": "Set the orchestrator value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove custom-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"customProfile\" : {\r\n             \"orchestrator\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config custom-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--orchestrator",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--orchestrator",
                      "description": "Remove the orchestrator value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "service-principal-profile": {
              "name": "service-principal-profile",
              "description": "Commands to configure service-principal-profile of acs in config file.",
              "fullName": "acs config service-principal-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set service-principal-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"servicePrincipalProfile\" : {\r\n             \"clientId\":\"\",\r\n             \"secret\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config service-principal-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--client-id <clientId>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--client-id",
                      "description": "Set the client-id value."
                    },
                    {
                      "flags": "--secret <secret>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--secret",
                      "description": "Set the secret value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove service-principal-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"servicePrincipalProfile\" : {\r\n             \"clientId\":\"\",\r\n             \"secret\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config service-principal-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--client-id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--client-id",
                      "description": "Remove the client-id value."
                    },
                    {
                      "flags": "--secret",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--secret",
                      "description": "Remove the secret value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "master-profile": {
              "name": "master-profile",
              "description": "Commands to configure master-profile of acs in config file.",
              "fullName": "acs config master-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set master-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"masterProfile\" : {\r\n             \"count\":null,\r\n             \"dnsPrefix\":\"\",\r\n             \"fqdn\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config master-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--count <count>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--count",
                      "description": "Set the count value."
                    },
                    {
                      "flags": "--dns-prefix <dnsPrefix>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--dns-prefix",
                      "description": "Set the dns-prefix value."
                    },
                    {
                      "flags": "--fqdn <fqdn>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--fqdn",
                      "description": "Set the fqdn value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove master-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"masterProfile\" : {\r\n             \"count\":null,\r\n             \"dnsPrefix\":\"\",\r\n             \"fqdn\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config master-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--count",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--count",
                      "description": "Remove the count value."
                    },
                    {
                      "flags": "--dns-prefix",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--dns-prefix",
                      "description": "Remove the dns-prefix value."
                    },
                    {
                      "flags": "--fqdn",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--fqdn",
                      "description": "Remove the fqdn value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "agent-pool-profiles": {
              "name": "agent-pool-profiles",
              "description": "Commands to configure agent-pool-profiles of acs in config file.",
              "fullName": "acs config agent-pool-profiles",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set agent-pool-profiles in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"agentPoolProfiles\" : {\r\n             \"name\":\"\",\r\n             \"count\":\"\",\r\n             \"vmSize\":\"\",\r\n             \"dnsPrefix\":\"\",\r\n             \"fqdn\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config agent-pool-profiles set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--count <count>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--count",
                      "description": "Set the count value."
                    },
                    {
                      "flags": "--vm-size <vmSize>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--vm-size",
                      "description": "Set the vm-size value."
                    },
                    {
                      "flags": "--dns-prefix <dnsPrefix>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--dns-prefix",
                      "description": "Set the dns-prefix value."
                    },
                    {
                      "flags": "--fqdn <fqdn>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--fqdn",
                      "description": "Set the fqdn value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove agent-pool-profiles in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"agentPoolProfiles\" : {\r\n             \"name\":\"\",\r\n             \"count\":\"\",\r\n             \"vmSize\":\"\",\r\n             \"dnsPrefix\":\"\",\r\n             \"fqdn\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config agent-pool-profiles delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--count",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--count",
                      "description": "Remove the count value."
                    },
                    {
                      "flags": "--vm-size",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--vm-size",
                      "description": "Remove the vm-size value."
                    },
                    {
                      "flags": "--dns-prefix",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--dns-prefix",
                      "description": "Remove the dns-prefix value."
                    },
                    {
                      "flags": "--fqdn",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--fqdn",
                      "description": "Remove the fqdn value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "windows-profile": {
              "name": "windows-profile",
              "description": "Commands to configure windows-profile of acs in config file.",
              "fullName": "acs config windows-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set windows-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"windowsProfile\" : {\r\n             \"adminUsername\":\"\",\r\n             \"adminPassword\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config windows-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--admin-username <adminUsername>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--admin-username",
                      "description": "Set the admin-username value."
                    },
                    {
                      "flags": "--admin-password <adminPassword>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--admin-password",
                      "description": "Set the admin-password value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove windows-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"windowsProfile\" : {\r\n             \"adminUsername\":\"\",\r\n             \"adminPassword\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config windows-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--admin-username",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--admin-username",
                      "description": "Remove the admin-username value."
                    },
                    {
                      "flags": "--admin-password",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--admin-password",
                      "description": "Remove the admin-password value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "linux-profile": {
              "name": "linux-profile",
              "description": "Commands to configure linux-profile of acs in config file.",
              "fullName": "acs config linux-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set linux-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"linuxProfile\" : {\r\n             \"adminUsername\":\"\",\r\n             \"ssh\":{\r\n               \"publicKeys\":[\r\n                 {\r\n                   \"keyData\":\"\"\r\n                 }\r\n               ]\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config linux-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--admin-username <adminUsername>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--admin-username",
                      "description": "Set the admin-username value."
                    },
                    {
                      "flags": "--ssh <ssh>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--ssh",
                      "description": "Set the ssh value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove linux-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"linuxProfile\" : {\r\n             \"adminUsername\":\"\",\r\n             \"ssh\":{\r\n               \"publicKeys\":[\r\n                 {\r\n                   \"keyData\":\"\"\r\n                 }\r\n               ]\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config linux-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--admin-username",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--admin-username",
                      "description": "Remove the admin-username value."
                    },
                    {
                      "flags": "--ssh",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--ssh",
                      "description": "Remove the ssh value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "ssh": {
              "name": "ssh",
              "description": "Commands to configure ssh of acs in config file.",
              "fullName": "acs config ssh",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set ssh in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"ssh\" : {\r\n             \"publicKeys\":[\r\n               {\r\n                 \"keyData\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config ssh set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--public-keys <publicKeys>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--public-keys",
                      "description": "Set the public-keys value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove ssh in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"ssh\" : {\r\n             \"publicKeys\":[\r\n               {\r\n                 \"keyData\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config ssh delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--public-keys",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--public-keys",
                      "description": "Remove the public-keys value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "public-keys": {
              "name": "public-keys",
              "description": "Commands to configure public-keys of acs in config file.",
              "fullName": "acs config public-keys",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set public-keys in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"publicKeys\" : {\r\n             \"keyData\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config public-keys set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--key-data <keyData>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-data",
                      "description": "Set the key-data value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove public-keys in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"publicKeys\" : {\r\n             \"keyData\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config public-keys delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--key-data",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-data",
                      "description": "Remove the key-data value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "diagnostics-profile": {
              "name": "diagnostics-profile",
              "description": "Commands to configure diagnostics-profile of acs in config file.",
              "fullName": "acs config diagnostics-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set diagnostics-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"diagnosticsProfile\" : {\r\n             \"vmDiagnostics\":{\r\n               \"enabled\":false,\r\n               \"storageUri\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config diagnostics-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--vm-diagnostics <vmDiagnostics>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--vm-diagnostics",
                      "description": "Set the vm-diagnostics value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove diagnostics-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"diagnosticsProfile\" : {\r\n             \"vmDiagnostics\":{\r\n               \"enabled\":false,\r\n               \"storageUri\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config diagnostics-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--vm-diagnostics",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--vm-diagnostics",
                      "description": "Remove the vm-diagnostics value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "vm-diagnostics": {
              "name": "vm-diagnostics",
              "description": "Commands to configure vm-diagnostics of acs in config file.",
              "fullName": "acs config vm-diagnostics",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set vm-diagnostics in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"vmDiagnostics\" : {\r\n             \"enabled\":false,\r\n             \"storageUri\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config vm-diagnostics set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--enabled <enabled>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--enabled",
                      "description": "Set the enabled value."
                    },
                    {
                      "flags": "--storage-uri <storageUri>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-uri",
                      "description": "Set the storage-uri value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove vm-diagnostics in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"vmDiagnostics\" : {\r\n             \"enabled\":false,\r\n             \"storageUri\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "acs config vm-diagnostics delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/containerServices.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--enabled",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--enabled",
                      "description": "Remove the enabled value."
                    },
                    {
                      "flags": "--storage-uri",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-uri",
                      "description": "Remove the storage-uri value."
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        }
      }
    },
    "ad": {
      "name": "ad",
      "description": "Commands to display Active Directory objects",
      "fullName": "ad",
      "usage": "[options]",
      "options": [],
      "commands": [],
      "categories": {
        "app": {
          "name": "app",
          "description": "Commands to display Active Directory applications",
          "fullName": "ad app",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Creates a new Active Directory application",
              "fullName": "ad app create",
              "usage": "[options] <name> <home-page> <identifier-uris>",
              "filePath": "commands/arm/ad/ad.application.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the display name for the application"
                },
                {
                  "flags": "-m --home-page <home-page>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--home-page",
                  "description": "the URL to the application homepage"
                },
                {
                  "flags": "-i --identifier-uris <identifier-uris>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--identifier-uris",
                  "description": "the comma-delimitied URIs that identify the application"
                },
                {
                  "flags": "-l --available <available>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--available",
                  "description": "the value specifying whether the application is a single tenant or a multi-tenant. \"true\" if the application will be available to other tenants, \"false\" if its a single tenant application. Default is false."
                },
                {
                  "flags": "-r --reply-urls <reply-urls>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--reply-urls",
                  "description": "the comma-delimitied application reply urls"
                },
                {
                  "flags": "-p --password <password>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--password",
                  "description": "the value for the password credential associated with the application that will be valid for one year by default"
                },
                {
                  "flags": "--cert-value <cert-value>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--cert-value",
                  "description": "the value of the \"asymmetric\" credential type. It represents the base 64 encoded certificate."
                },
                {
                  "flags": "--start-date <start-date>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--start-date",
                  "description": "the start date after which password or key would be valid. Default value is current time"
                },
                {
                  "flags": "--end-date <end-date>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--end-date",
                  "description": "the end date till which password or key is valid. Default value is one year after current time"
                }
              ]
            },
            {
              "name": "set",
              "description": "Updates the properties of the created Active Directory application",
              "fullName": "ad app set",
              "usage": "[options]",
              "filePath": "commands/arm/ad/ad.application.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-o --objectId <objectId>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--objectId",
                  "description": "the object id of the application to update. Either provide objectId or applicationId. objectId is more preferable."
                },
                {
                  "flags": "-a --applicationId <applicationId>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--applicationId",
                  "description": "the applicationId of the application to update. If you have created a service principal using this application then this will be the spn of the service principal."
                },
                {
                  "flags": "-l --available <available>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--available",
                  "description": "the new value specifying whether the application is a single tenant or a multi-tenant. \"true\" if the application will be available to other tenants, \"false\" if its a single tenant application."
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the new display name for the application."
                },
                {
                  "flags": "-m --home-page <home-page>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--home-page",
                  "description": "the new URL to the application homepage"
                },
                {
                  "flags": "-i --identifier-uris <identifier-uris>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--identifier-uris",
                  "description": "new comma-delimitied URI values that identify the application"
                },
                {
                  "flags": "-r --reply-urls <reply-urls>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--reply-urls",
                  "description": "new comma-delimitied application reply urls"
                },
                {
                  "flags": "-p --password <password>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--password",
                  "description": "new value for the password credential associated with the application that will be valid for one year by default"
                },
                {
                  "flags": "--cert-value <cert-value>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--cert-value",
                  "description": "new value of the \"asymmetric\" credential type. It represents the base 64 encoded certificate."
                },
                {
                  "flags": "--start-date <start-date>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--start-date",
                  "description": "new start date value after which password or key would be valid. Default value is current time"
                },
                {
                  "flags": "--end-date <end-date>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--end-date",
                  "description": "new end date value till which password or key is valid. Default value is one year after current time"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Deletes the Active Directory application",
              "fullName": "ad app delete",
              "usage": "[options] <object-id>",
              "filePath": "commands/arm/ad/ad.application.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-o --objectId <objectId>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--objectId",
                  "description": "the object id of the application to remove"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode (do not ask for delete confirmation)"
                }
              ]
            },
            {
              "name": "list",
              "description": "Get all Active Directory applications in current subscription's tenant",
              "fullName": "ad app list",
              "usage": "[options]",
              "filePath": "commands/arm/ad/ad.application.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                }
              ]
            },
            {
              "name": "show",
              "description": "Get Active Directory applications",
              "fullName": "ad app show",
              "usage": "[options]",
              "filePath": "commands/arm/ad/ad.application.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-a --applicationId <applicationId>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--applicationId",
                  "description": "the name of the application to return"
                },
                {
                  "flags": "-o --objectId <objectId>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--objectId",
                  "description": "the object id of the application to return"
                },
                {
                  "flags": "-i --identifierUri <identifierUri>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--identifierUri",
                  "description": "the identifier uri of the application to return"
                },
                {
                  "flags": "-c --search <search>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--search",
                  "description": "search display name of the application starting with the provided value"
                }
              ]
            }
          ],
          "categories": {}
        },
        "group": {
          "name": "group",
          "description": "Commands to display Active Directory groups",
          "fullName": "ad group",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "Get Active Directory groups in current subscription's tenant. When --json flag is used, it will get the information from all the pages and then provide the final json array.",
              "fullName": "ad group list",
              "usage": "[options]",
              "filePath": "commands/arm/ad/ad.groups.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "| more",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "",
                  "long": "more",
                  "description": "Provides paging support. Press 'Enter' for more information."
                }
              ]
            },
            {
              "name": "show",
              "description": "Get Active Directory groups",
              "fullName": "ad group show",
              "usage": "[options]",
              "filePath": "commands/arm/ad/ad.groups.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-o --objectId <objectId>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--objectId",
                  "description": "the object Id of the group to return"
                },
                {
                  "flags": "-c --search <search>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--search",
                  "description": "Search by display name which starts with the provided value"
                }
              ]
            },
            {
              "name": "create",
              "description": "Creates an Active Directory group in the tenant.",
              "fullName": "ad group create",
              "usage": "[options] <display-name> <mail-nickname>",
              "filePath": "commands/arm/ad/ad.groups.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-d --display-name <display-name>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--display-name",
                  "description": "The name to display in the address book for the group."
                },
                {
                  "flags": "-m --mail-nickname <mail-nickname>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--mail-nickname",
                  "description": "The mail alias for the group."
                }
              ]
            },
            {
              "name": "delete",
              "description": "Deletes an Active Directory group.",
              "fullName": "ad group delete",
              "usage": "[options] <objectId>",
              "filePath": "commands/arm/ad/ad.groups.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-o --objectId <objectId>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--objectId",
                  "description": "the object Id of the group to delete"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode (do not ask for delete confirmation)"
                }
              ]
            }
          ],
          "categories": {
            "member": {
              "name": "member",
              "description": "Commands to provide an Active Directory sub group or member info",
              "fullName": "ad group member",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "Provides an Active Directory sub group or member info. When --json flag is used, it will get the information from all the pages and then provide the final json array.",
                  "fullName": "ad group member list",
                  "usage": "[options] <objectId>",
                  "filePath": "commands/arm/ad/ad.groups.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-o --objectId <objectId>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--objectId",
                      "description": "Object id of group whose members to return."
                    },
                    {
                      "flags": "| more",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "",
                      "long": "more",
                      "description": "Provides paging support. Press 'Enter' for more information."
                    }
                  ]
                },
                {
                  "name": "add",
                  "description": "Adds a member to an Active Directory group.",
                  "fullName": "ad group member add",
                  "usage": "[options] <objectId> <member-objectId>",
                  "filePath": "commands/arm/ad/ad.groups.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-o --objectId <objectId>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--objectId",
                      "description": "Object id of group to which the member needs to be added."
                    },
                    {
                      "flags": "-m --member-objectId <member-objectId>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-m",
                      "long": "--member-objectId",
                      "description": "Object id of the member (application, user, servicePrincipal, another-group) to be added to this group."
                    },
                    {
                      "flags": "-e --graph-endpoint <graph-endpoint>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--graph-endpoint",
                      "description": "The graph endpoint which will be the part of the member url created by the command. Default value: 'https://graph.windows.net'."
                    },
                    {
                      "flags": "-t --tenant <tenant>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--tenant",
                      "description": "TenantId (in a GUID format) to which the member belongs. Default value is the current tenant of the logged in user/sp."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Deletes a member from an Active Directory group.",
                  "fullName": "ad group member delete",
                  "usage": "[options] <objectId> <member-objectId>",
                  "filePath": "commands/arm/ad/ad.groups.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-o --objectId <objectId>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--objectId",
                      "description": "Object id of group from which the member needs to be deleted."
                    },
                    {
                      "flags": "-m --member-objectId <member-objectId>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-m",
                      "long": "--member-objectId",
                      "description": "Object id of the member (application, user, servicePrincipal, another-group) to be deleted from this group."
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode (do not ask for delete confirmation)"
                    }
                  ]
                },
                {
                  "name": "check",
                  "description": "Checks whether the specified user, group, contact, or service principal is a direct or a transitive member of the specified Active Directory group.",
                  "fullName": "ad group member check",
                  "usage": "[options] <objectId> <member-objectId>",
                  "filePath": "commands/arm/ad/ad.groups.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-o --objectId <objectId>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--objectId",
                      "description": "Object id of group against which the membership needs to be checked."
                    },
                    {
                      "flags": "-m --member-objectId <member-objectId>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-m",
                      "long": "--member-objectId",
                      "description": "Object id of the member (application, user, servicePrincipal, another-group) for which membership needs to be checked in the specified group."
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "sp": {
          "name": "sp",
          "description": "Commands to display Active Directory service principals",
          "fullName": "ad sp",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "Get all Active Directory service principals in current subscription's tenant. When --json flag is used, it will get the information from all the pages and then provide the final json array.",
              "fullName": "ad sp list",
              "usage": "[options]",
              "filePath": "commands/arm/ad/ad.servicePrincipals.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "| more",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "",
                  "long": "more",
                  "description": "Provides paging support. Press 'Enter' for more information."
                }
              ]
            },
            {
              "name": "show",
              "description": "Get Active Directory service principals",
              "fullName": "ad sp show",
              "usage": "[options]",
              "filePath": "commands/arm/ad/ad.servicePrincipals.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --spn <spn>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--spn",
                  "description": "the name of the service principal to return"
                },
                {
                  "flags": "-o --objectId <objectId>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--objectId",
                  "description": "the object id of the service principal to return"
                },
                {
                  "flags": "-c --search <search>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--search",
                  "description": "search display name of the service principal starting with the provided value"
                }
              ]
            },
            {
              "name": "create",
              "description": "Create Active Directory service principal.",
              "fullName": "ad sp create",
              "usage": "[options]",
              "filePath": "commands/arm/ad/ad.servicePrincipals.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-a --applicationId <applicationId>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--applicationId",
                  "description": "The application Id for which service principal needs to be created. If this is provided then everything else will be ignored. \nWhen the applicationId is provided it means that the application was already created and it needs to be used to create the service principal."
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the display name for the application"
                },
                {
                  "flags": "-p --password <password>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--password",
                  "description": "the value for the password credential associated with the application that will be valid for one year by default"
                },
                {
                  "flags": "--cert-value <cert-value>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--cert-value",
                  "description": "the value of the \"asymmetric\" credential type. It represents the base 64 encoded certificate"
                },
                {
                  "flags": "--start-date <start-date>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--start-date",
                  "description": "the start date after which password or key would be valid. Default value is current time"
                },
                {
                  "flags": "--end-date <end-date>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--end-date",
                  "description": "the end date till which password or key is valid. Default value is one year after current time"
                }
              ]
            },
            {
              "name": "set",
              "description": "Updates the properties of the created Active Directory ServicePrincipal",
              "fullName": "ad sp set",
              "usage": "[options] <objectId>",
              "filePath": "commands/arm/ad/ad.servicePrincipals.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-o --objectId <objectId>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--objectId",
                  "description": "the object id of the servicePrincipal to update."
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the new display name for the application."
                },
                {
                  "flags": "-p --password <password>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--password",
                  "description": "new value for the password credential associated with the application that will be valid for one year by default"
                },
                {
                  "flags": "--cert-value <cert-value>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--cert-value",
                  "description": "new value of the \"asymmetric\" credential type. It represents the base 64 encoded certificate"
                },
                {
                  "flags": "--start-date <start-date>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--start-date",
                  "description": "new start date value after which password or key would be valid. Default value is current time"
                },
                {
                  "flags": "--end-date <end-date>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--end-date",
                  "description": "new end date value till which password or key is valid. Default value is one year after current time"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Deletes Active Directory service principal.",
              "fullName": "ad sp delete",
              "usage": "[options] <objectId>",
              "filePath": "commands/arm/ad/ad.servicePrincipals.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-o --objectId <objectId>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--objectId",
                  "description": "the object id of the service principal to delete"
                },
                {
                  "flags": "-d --delete-application",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--delete-application",
                  "description": "Default value: false. If you want to delete the underlying application then set this flag."
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode (do not ask for delete confirmation)"
                }
              ]
            }
          ],
          "categories": {}
        },
        "user": {
          "name": "user",
          "description": "Commands to display Active Directory users",
          "fullName": "ad user",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "Get all Active Directory users in current subscription's tenant. When --json flag is used, it will get the information from all the pages and then provide the final json array.",
              "fullName": "ad user list",
              "usage": "[options]",
              "filePath": "commands/arm/ad/ad.users.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "| more",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "",
                  "long": "more",
                  "description": "Provides paging support. Press 'Enter' for more information."
                }
              ]
            },
            {
              "name": "show",
              "description": "Get an Active Directory user",
              "fullName": "ad user show",
              "usage": "[options]",
              "filePath": "commands/arm/ad/ad.users.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u --upn <upn>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--upn",
                  "description": "the principal name of the user to return"
                },
                {
                  "flags": "-o --objectId <objectId>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--objectId",
                  "description": "the object id of the user to return"
                },
                {
                  "flags": "-c --search <search>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--search",
                  "description": "search users with display name starting with the provided value"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Deletes Active Directory user (work/school account also popularly known as org-id).",
              "fullName": "ad user delete",
              "usage": "[options] <upn-or-objectId>",
              "filePath": "commands/arm/ad/ad.users.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u --upn-or-objectId <upn-or-objectId>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--upn-or-objectId",
                  "description": "the user principal name or the objectId."
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode (do not ask for delete confirmation)."
                }
              ]
            },
            {
              "name": "create",
              "description": "Create Active Directory user (work/school account also popularly known as org-id). For more information: https://msdn.microsoft.com/en-us/library/azure/ad/graph/api/users-operations#CreateUser",
              "fullName": "ad user create",
              "usage": "[options] <upn> <display-name> <mail-nickname> <password>",
              "filePath": "commands/arm/ad/ad.users.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u --upn <upn>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--upn",
                  "description": "the user principal name. example - 'someuser@contoso.com'."
                },
                {
                  "flags": "-i --immutableId <immutableId>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--immutableId",
                  "description": "It needs to be specified only if you are using a federated domain for the user's user principal name (upn) property."
                },
                {
                  "flags": "-d --display-name <display-name>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--display-name",
                  "description": "the name to display in the address book for the user. example 'Alex Wu'"
                },
                {
                  "flags": "-m --mail-nickname <mail-nickname>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--mail-nickname",
                  "description": "the mail alias for the user. example: 'Alexw'."
                },
                {
                  "flags": "-p --password <password>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--password",
                  "description": "password for the user. It must meet the tenant's password complexity requirements. It is recommended to set a strong password."
                },
                {
                  "flags": "-f --force-change-password-next-login",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--force-change-password-next-login",
                  "description": "It must be specified if the user must change the password on the next successful login (true). Default behavior is (false) to not change the password on the next successful login."
                }
              ]
            },
            {
              "name": "set",
              "description": "Update an existing Active Directory user (work/school account also popularly known as org-id). For more information: https://msdn.microsoft.com/en-us/library/azure/ad/graph/api/users-operations#UpdateUser",
              "fullName": "ad user set",
              "usage": "[options] <upn-or-objectId>",
              "filePath": "commands/arm/ad/ad.users.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u --upn-or-objectId <upn-or-objectId>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--upn-or-objectId",
                  "description": "the user principal name ('someuser@contoso.com') or the objectId (a Guid) for which the properties need to be updated."
                },
                {
                  "flags": "-a --enable-account <enable-account>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--enable-account",
                  "description": "true for enabling the account; otherwise, false."
                },
                {
                  "flags": "-d --display-name <display-name>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--display-name",
                  "description": "new name to display in the address book for the user. example 'Alex Wu'"
                },
                {
                  "flags": "-m --mail-nickname <mail-nickname>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--mail-nickname",
                  "description": "new mail alias for the user. example: 'Alexw'."
                },
                {
                  "flags": "-p --password <password>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--password",
                  "description": "new password for the user. It must meet the tenant's password complexity requirements. It is recommended to set a strong password."
                },
                {
                  "flags": "-f --force-change-password-next-login",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--force-change-password-next-login",
                  "description": "It must be specified only when you are updating the password. Otherwise it will be ignored. It must be specified if the user must change the password on the next successful login (true). Default behavior is (false) to not change the password on the next successful login."
                }
              ]
            }
          ],
          "categories": {
            "memberGroups": {
              "name": "memberGroups",
              "description": "Commands to display member groups of the Active Directory user.",
              "fullName": "ad user memberGroups",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "Provides a lit of Object IDs of the groups of which the user is a member.",
                  "fullName": "ad user memberGroups list",
                  "usage": "[options] <objectId>",
                  "filePath": "commands/arm/ad/ad.users.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-o --objectId <objectId>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--objectId",
                      "description": "the objectId of the user"
                    },
                    {
                      "flags": "-e --securityEnabledOnly",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--securityEnabledOnly",
                      "description": "If true, only membership in security enabled groups will be checked. Otherwise membership in all groups will be checked. Default: false"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        }
      }
    },
    "appserviceplan": {
      "name": "appserviceplan",
      "description": "Commands to manage your Azure appserviceplans",
      "fullName": "appserviceplan",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "create",
          "description": "Create an App Service Plan",
          "fullName": "appserviceplan create",
          "usage": "[options] <resource-group> <name> <location> <sku>",
          "filePath": "commands/arm/appserviceplan/appserviceplan.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group <resource-group>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "Name of the resource group"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the name of the App Service Plan to create"
            },
            {
              "flags": "-l --location <location>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-l",
              "long": "--location",
              "description": "the geographic region to create the App Service Plan, \n\t\t\t\t\t   locations found at https://azure.microsoft.com/en-us/status/"
            },
            {
              "flags": "-k --sku <sku>",
              "required": -10,
              "optional": 0,
              "bool": true,
              "short": "-k",
              "long": "--sku",
              "description": "sku of the App Service Plan\n\teg:\n\t\t F1 (Free),           D1 (Shared),\n\t\t B1 (Basic Small),    B2 (Basic Medium),    B3 (Basic Large),\n\t\t S1 (Standard Small), S2 (Standard Medium), S3 (Standard Large),\n\t\t P1 (Premium Small),  P2 (Premium Medium),  P3 (Premium Large)\n"
            },
            {
              "flags": "-i --instances <instances>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-i",
              "long": "--instances",
              "description": "the number of instances in the App Service Plan, Default is 1"
            },
            {
              "flags": "-x --islinux <islinux>",
              "required": -14,
              "optional": 0,
              "bool": true,
              "short": "-x",
              "long": "--islinux",
              "description": "enables a linux App Service Plan, E.g --islinux true"
            },
            {
              "flags": "-s --subscription <subscription>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            },
            {
              "flags": "-t --tier <tier>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--tier",
              "description": "to be deprecated, please use --sku option"
            }
          ]
        },
        {
          "name": "delete",
          "description": "Delete an App Service Plan",
          "fullName": "appserviceplan delete",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/appserviceplan/appserviceplan.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group <resource-group>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "Name of the resource group"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the name of the App Service Plan to delete"
            },
            {
              "flags": "-q, --quiet",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-q",
              "long": "--quiet",
              "description": "quiet mode, do not ask for delete confirmation"
            },
            {
              "flags": "-s --subscription <subscription>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "list",
          "description": "List your App Service Plans",
          "fullName": "appserviceplan list",
          "usage": "[options] <resource-group>",
          "filePath": "commands/arm/appserviceplan/appserviceplan.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group <resource-group>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the name of the resource group"
            },
            {
              "flags": "-s --subscription <subscription>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "show",
          "description": "Get an App Service Plan",
          "fullName": "appserviceplan show",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/appserviceplan/appserviceplan.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group <resource-group>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the name of the resource group"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the name of the App Service Plan to show"
            },
            {
              "flags": "-s --subscription <subscription>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "set",
          "description": "Update App Service Plan Configurations",
          "fullName": "appserviceplan set",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/appserviceplan/appserviceplan.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group <resource-group>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "Name of the resource group"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the name of the App Service Plan to update"
            },
            {
              "flags": "-k --sku <sku>",
              "required": -10,
              "optional": 0,
              "bool": true,
              "short": "-k",
              "long": "--sku",
              "description": "sku of the App Service Plan\n\teg:\n\t\t F1 (Free),           D1 (Shared),\n\t\t B1 (Basic Small),    B2 (Basic Medium),    B3 (Basic Large),\n\t\t S1 (Standard Small), S2 (Standard Medium), S3 (Standard Large),\n\t\t P1 (Premium Small),  P2 (Premium Medium),  P3 (Premium Large)\n"
            },
            {
              "flags": "-i --instances <instances>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-i",
              "long": "--instances",
              "description": "the number of instances in the App Service Plan, Default is 1"
            },
            {
              "flags": "-s --subscription <subscription>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            },
            {
              "flags": "-t --tier <tier>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--tier",
              "description": "to be deprecated, please use --sku option"
            }
          ]
        }
      ],
      "categories": {}
    },
    "availset": {
      "name": "availset",
      "description": "Commands to manage your availability sets.  ",
      "fullName": "availset",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "create",
          "description": "Creates an availability set within a resource group",
          "fullName": "availset create",
          "usage": "[options] <resource-group> <name> <location> [tags]",
          "filePath": "commands/arm/availabilityset/availset.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the availability set name"
            },
            {
              "flags": "-l, --location <location>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-l",
              "long": "--location",
              "description": "the location"
            },
            {
              "flags": "-t, --tags <tags>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--tags",
              "description": "the semicolon separated list of tags"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            },
            {
              "flags": "-a, --platform-update-domain-count <platformUpdateDomainCount>",
              "required": -36,
              "optional": 0,
              "bool": true,
              "short": "-a",
              "long": "--platform-update-domain-count",
              "description": "Set the platform-update-domain-count value."
            },
            {
              "flags": "-b, --platform-fault-domain-count <platformFaultDomainCount>",
              "required": -35,
              "optional": 0,
              "bool": true,
              "short": "-b",
              "long": "--platform-fault-domain-count",
              "description": "Set the platform-fault-domain-count value."
            }
          ]
        },
        {
          "name": "list",
          "description": "Lists the availability sets within a resource group",
          "fullName": "availset list",
          "usage": "[options] <resource-group>",
          "filePath": "commands/arm/availabilityset/availset.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "show",
          "description": "Gets one availability set within a resource group",
          "fullName": "availset show",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/availabilityset/availset.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resourceGroup>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the availability set name"
            },
            {
              "flags": "-d, --depth <depth>",
              "required": -13,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--depth",
              "description": "the number of times to recurse, to recurse indefinitely pass \"full\". (valid only with --json option)"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "delete",
          "description": "Deletes one availability set within a resource group",
          "fullName": "availset delete",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/availabilityset/availset.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the virtual machine name"
            },
            {
              "flags": "-q, --quiet",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-q",
              "long": "--quiet",
              "description": "quiet mode, do not ask for delete confirmation"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "create-or-update",
          "description": "Create or update an availability set.",
          "fullName": "availset create-or-update",
          "usage": "[options] <resource-group> <name> <parameters>",
          "filePath": "commands/arm/compute/availabilitySets.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-p, --parameters <parameters>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--parameters",
              "description": "A string of parameters in JSON format"
            },
            {
              "flags": "--parameter-file <parameter-file>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "long": "--parameter-file",
              "description": "The text file that contains input parameter object in JSON format"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "list-available-sizes",
          "description": "Lists all available virtual machine sizes that can be used to create a new virtual machine in an existing availability set.",
          "fullName": "availset list-available-sizes",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/compute/availabilitySets.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        }
      ],
      "categories": {
        "config": {
          "name": "config",
          "description": "Commands to manage configuration of availability-sets in the parameter file.",
          "fullName": "availset config",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Generate availabilitySetsCreateOrUpdate parameter string or files.",
              "fullName": "availset config create",
              "usage": "[options]",
              "filePath": "commands/arm/compute/availabilitySets.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                }
              ]
            },
            {
              "name": "patch",
              "description": "Command to patch availabilitySetsCreateOrUpdate parameter JSON file.",
              "fullName": "availset config patch",
              "usage": "[options]",
              "filePath": "commands/arm/compute/availabilitySets.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                },
                {
                  "flags": "--operation <operation>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--operation",
                  "description": "The JSON patch operation: add, remove, or replace."
                },
                {
                  "flags": "--path <path>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--path",
                  "description": "The JSON data path, e.g.: \"foo/1\"."
                },
                {
                  "flags": "--value <value>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--value",
                  "description": "The JSON value."
                },
                {
                  "flags": "--parse",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--parse",
                  "description": "Parse the JSON value to object."
                }
              ]
            }
          ],
          "categories": {
            "availability-set": {
              "name": "availability-set",
              "description": "Commands to configure availability-set of availset in config file.",
              "fullName": "availset config availability-set",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set availability-set in config string or files, e.g. \r\n{\r\n  \"platformUpdateDomainCount\":null,\r\n  \"platformFaultDomainCount\":null,\r\n  \"virtualMachines\":[\r\n    {\r\n      \"id\":\"\"\r\n    }\r\n  ],\r\n  \"statuses\":[\r\n    {\r\n      \"code\":\"\",\r\n      \"level\":null,\r\n      \"displayStatus\":\"\",\r\n      \"message\":\"\",\r\n      \"time\":null\r\n    }\r\n  ],\r\n  \"sku\":{\r\n    \"name\":\"\",\r\n    \"tier\":\"\",\r\n    \"capacity\":null\r\n  },\r\n  \"id\":null,\r\n  \"name\":null,\r\n  \"type\":null,\r\n  \"location\":\"\",\r\n  \"tags\":{\r\n  }\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "availset config availability-set set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/availabilitySets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--platform-update-domain-count <platformUpdateDomainCount>",
                      "required": -32,
                      "optional": 0,
                      "bool": true,
                      "long": "--platform-update-domain-count",
                      "description": "Set the platform-update-domain-count value."
                    },
                    {
                      "flags": "--platform-fault-domain-count <platformFaultDomainCount>",
                      "required": -31,
                      "optional": 0,
                      "bool": true,
                      "long": "--platform-fault-domain-count",
                      "description": "Set the platform-fault-domain-count value."
                    },
                    {
                      "flags": "--virtual-machines <virtualMachines>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--virtual-machines",
                      "description": "Set the virtual-machines value."
                    },
                    {
                      "flags": "--statuses <statuses>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--statuses",
                      "description": "Set the statuses value."
                    },
                    {
                      "flags": "--sku <sku>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--sku",
                      "description": "Set the sku value."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--type <type>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Set the type value."
                    },
                    {
                      "flags": "--location <location>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--location",
                      "description": "Set the location value."
                    },
                    {
                      "flags": "--tags <tags>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--tags",
                      "description": "Set the tags value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove availability-set in config string or files, e.g. \r\n{\r\n  \"platformUpdateDomainCount\":null,\r\n  \"platformFaultDomainCount\":null,\r\n  \"virtualMachines\":[\r\n    {\r\n      \"id\":\"\"\r\n    }\r\n  ],\r\n  \"statuses\":[\r\n    {\r\n      \"code\":\"\",\r\n      \"level\":null,\r\n      \"displayStatus\":\"\",\r\n      \"message\":\"\",\r\n      \"time\":null\r\n    }\r\n  ],\r\n  \"sku\":{\r\n    \"name\":\"\",\r\n    \"tier\":\"\",\r\n    \"capacity\":null\r\n  },\r\n  \"id\":null,\r\n  \"name\":null,\r\n  \"type\":null,\r\n  \"location\":\"\",\r\n  \"tags\":{\r\n  }\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "availset config availability-set delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/availabilitySets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--platform-update-domain-count",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--platform-update-domain-count",
                      "description": "Remove the platform-update-domain-count value."
                    },
                    {
                      "flags": "--platform-fault-domain-count",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--platform-fault-domain-count",
                      "description": "Remove the platform-fault-domain-count value."
                    },
                    {
                      "flags": "--virtual-machines",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--virtual-machines",
                      "description": "Remove the virtual-machines value."
                    },
                    {
                      "flags": "--statuses",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--statuses",
                      "description": "Remove the statuses value."
                    },
                    {
                      "flags": "--sku",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--sku",
                      "description": "Remove the sku value."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Remove the type value."
                    },
                    {
                      "flags": "--location",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--location",
                      "description": "Remove the location value."
                    },
                    {
                      "flags": "--tags",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--tags",
                      "description": "Remove the tags value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "virtual-machines": {
              "name": "virtual-machines",
              "description": "Commands to configure virtual-machines of availset in config file.",
              "fullName": "availset config virtual-machines",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set virtual-machines in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"virtualMachines\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "availset config virtual-machines set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/availabilitySets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove virtual-machines in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"virtualMachines\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "availset config virtual-machines delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/availabilitySets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "statuses": {
              "name": "statuses",
              "description": "Commands to configure statuses of availset in config file.",
              "fullName": "availset config statuses",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set statuses in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"statuses\" : {\r\n             \"code\":\"\",\r\n             \"level\":null,\r\n             \"displayStatus\":\"\",\r\n             \"message\":\"\",\r\n             \"time\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "availset config statuses set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/availabilitySets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--code <code>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--code",
                      "description": "Set the code value."
                    },
                    {
                      "flags": "--level <level>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--level",
                      "description": "Set the level value."
                    },
                    {
                      "flags": "--display-status <displayStatus>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--display-status",
                      "description": "Set the display-status value."
                    },
                    {
                      "flags": "--message <message>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--message",
                      "description": "Set the message value."
                    },
                    {
                      "flags": "--time <time>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--time",
                      "description": "Set the time value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove statuses in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"statuses\" : {\r\n             \"code\":\"\",\r\n             \"level\":null,\r\n             \"displayStatus\":\"\",\r\n             \"message\":\"\",\r\n             \"time\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "availset config statuses delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/availabilitySets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--code",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--code",
                      "description": "Remove the code value."
                    },
                    {
                      "flags": "--level",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--level",
                      "description": "Remove the level value."
                    },
                    {
                      "flags": "--display-status",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--display-status",
                      "description": "Remove the display-status value."
                    },
                    {
                      "flags": "--message",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--message",
                      "description": "Remove the message value."
                    },
                    {
                      "flags": "--time",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--time",
                      "description": "Remove the time value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "sku": {
              "name": "sku",
              "description": "Commands to configure sku of availset in config file.",
              "fullName": "availset config sku",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set sku in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sku\" : {\r\n             \"name\":\"\",\r\n             \"tier\":\"\",\r\n             \"capacity\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "availset config sku set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/availabilitySets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--tier <tier>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--tier",
                      "description": "Set the tier value."
                    },
                    {
                      "flags": "--capacity <capacity>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--capacity",
                      "description": "Set the capacity value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove sku in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sku\" : {\r\n             \"name\":\"\",\r\n             \"tier\":\"\",\r\n             \"capacity\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "availset config sku delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/availabilitySets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--tier",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--tier",
                      "description": "Remove the tier value."
                    },
                    {
                      "flags": "--capacity",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--capacity",
                      "description": "Remove the capacity value."
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        }
      }
    },
    "cdn": {
      "name": "cdn",
      "description": "Commands to manage Azure Content Delivery Network (CDN)",
      "fullName": "cdn",
      "usage": "[options]",
      "options": [],
      "commands": [],
      "categories": {
        "profile": {
          "name": "profile",
          "description": "Commands to manage your Azure cdn profiles",
          "fullName": "cdn profile",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List all profiles under the current subscription",
              "fullName": "cdn profile list",
              "usage": "[options] [resource-group]",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group [resource-group]",
                  "required": 0,
                  "optional": -22,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "Name of the Resource Group"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show the infomation of a specific cdn profile",
              "fullName": "cdn profile show",
              "usage": "[options] <name> <resource-group>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of the Cdn Profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "Name of the Resource Group"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "create",
              "description": "Create a profile under given resource group and subscription",
              "fullName": "cdn profile create",
              "usage": "[options] <name> <resource-group> <location> <sku-name> [tags]",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile will be created in"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "The location in which to create the Cdn Profile"
                },
                {
                  "flags": "-k, --sku-name <sku-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--sku-name",
                  "description": "The pricing sku name of the Azure Cdn Profile"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "Tags to set to the profile. Can be multiple. In the format of 'name=value'. Name is required and value is optional."
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a profile under given resource group and subscription",
              "fullName": "cdn profile delete",
              "usage": "[options] <profile-name> <resource-group>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile will be delete in"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "set",
              "description": "Update a profile's tags",
              "fullName": "cdn profile set",
              "usage": "[options] <name> <resource-group> [tags]",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile will be created in"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "Tags to set to the profile. Can be multiple. In the format of 'name=value'. Name is required and value is optional."
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "checkUsage",
              "description": "List the usages of resources under profile.",
              "fullName": "cdn profile checkUsage",
              "usage": "[options] <name> <profile-name> <resource-group>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "ssouri": {
          "name": "ssouri",
          "description": "Commands to generate sso uri of your Azure cdn profiles",
          "fullName": "cdn ssouri",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create sso uri of the profile",
              "fullName": "cdn ssouri create",
              "usage": "[options] <profile-name> <resource-group>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "endpoint": {
          "name": "endpoint",
          "description": "Commands to manage Azure cdn profile endpoints",
          "fullName": "cdn endpoint",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List endpoints by profile and resource group",
              "fullName": "cdn endpoint list",
              "usage": "[options] <profile-name> <resource-group>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Get endpoint by endpoint name, profile name, and resource group",
              "fullName": "cdn endpoint show",
              "usage": "[options] <name> <profile-name> <resource-group>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of the endpoint"
                },
                {
                  "flags": "-p, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "create",
              "description": "Create endpoint with given name and properties.",
              "fullName": "cdn endpoint create",
              "usage": "[options] <name> <profile-name> <resource-group> <location> <origin-name> <origin-host-name> [origin-host-header] [origin-path] [content-type-to-compress] [is-compression-enabled] [is-http-allowed] [is-https-allowed] [query-string-caching-behavior]  [http-port] [https-port] [tags]",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of the endpoint"
                },
                {
                  "flags": "-p, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "The location of the Cdn endpoint"
                },
                {
                  "flags": "-o, --origin-name <origin-name>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--origin-name",
                  "description": "The name of the origin used to identify the origin"
                },
                {
                  "flags": "-r, --origin-host-name <origin-host-name>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--origin-host-name",
                  "description": "The host name of the origin"
                },
                {
                  "flags": "-e, --origin-host-header [origin-host-header]",
                  "required": 0,
                  "optional": -26,
                  "bool": true,
                  "short": "-e",
                  "long": "--origin-host-header",
                  "description": "The origin host header of the Azure Cdn Endpoint"
                },
                {
                  "flags": "-i, --origin-path [origin-path]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-i",
                  "long": "--origin-path",
                  "description": "The origin path Azure Cdn Endpoint"
                },
                {
                  "flags": "-c, --content-types-to-compress [content-types-to-compress]",
                  "required": 0,
                  "optional": -33,
                  "bool": true,
                  "short": "-c",
                  "long": "--content-types-to-compress",
                  "description": "The list of mime types that need to be compressed by Cdn edge nodes"
                },
                {
                  "flags": "-d, --is-compression-enabled [is-compression-enabled]",
                  "required": 0,
                  "optional": -30,
                  "bool": true,
                  "short": "-d",
                  "long": "--is-compression-enabled",
                  "description": "Is the compression enabled for the Cdn. Valid input: -d [true|false]"
                },
                {
                  "flags": "-w, --is-http-allowed [is-http-allowed]",
                  "required": 0,
                  "optional": -23,
                  "bool": true,
                  "short": "-w",
                  "long": "--is-http-allowed",
                  "description": "Is the http traffic allowed for the Cdn. Valid input: -w [true|false]"
                },
                {
                  "flags": "-a, --is-https-allowed [is-https-allowed]",
                  "required": 0,
                  "optional": -24,
                  "bool": true,
                  "short": "-a",
                  "long": "--is-https-allowed",
                  "description": "Is the https traffic allowed for the Cdn. Valid input: -a [true|false]"
                },
                {
                  "flags": "-q, --query-string-caching-behavior [query-string-caching-behavior]",
                  "required": 0,
                  "optional": -37,
                  "bool": true,
                  "short": "-q",
                  "long": "--query-string-caching-behavior",
                  "description": "The way Cdn handles requests with query string"
                },
                {
                  "flags": "-u, --http-port [http-port]",
                  "required": 0,
                  "optional": -17,
                  "bool": true,
                  "short": "-u",
                  "long": "--http-port",
                  "description": "The port http traffic used on the origin server"
                },
                {
                  "flags": "-f, --https-port [https-port]",
                  "required": 0,
                  "optional": -18,
                  "bool": true,
                  "short": "-f",
                  "long": "--https-port",
                  "description": "The port https traffic used on the origin server"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "The tags to associate with the Azure Cdn Endpoint"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "set",
              "description": "Update endpoint with given properties.",
              "fullName": "cdn endpoint set",
              "usage": "[options] <name> <profile-name> <resource-group> [origin-host-header] [origin-path] [content-type-to-compress] [is-compression-enabled] [is-http-allowed] [is-https-allowed] [query-string-caching-behavior] [tags]",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of the endpoint"
                },
                {
                  "flags": "-p, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "-e, --origin-host-header [origin-host-header]",
                  "required": 0,
                  "optional": -26,
                  "bool": true,
                  "short": "-e",
                  "long": "--origin-host-header",
                  "description": "The origin host header of the Azure Cdn Endpoint"
                },
                {
                  "flags": "-i, --origin-path [origin-path]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-i",
                  "long": "--origin-path",
                  "description": "The origin path Azure Cdn Endpoint"
                },
                {
                  "flags": "-c, --content-types-to-compress [content-types-to-compress]",
                  "required": 0,
                  "optional": -33,
                  "bool": true,
                  "short": "-c",
                  "long": "--content-types-to-compress",
                  "description": "The list of mime types that need to be compressed by Cdn edge nodes"
                },
                {
                  "flags": "-d, --is-compression-enabled [is-compression-enabled]",
                  "required": 0,
                  "optional": -30,
                  "bool": true,
                  "short": "-d",
                  "long": "--is-compression-enabled",
                  "description": "Is the compression enabled for the Cdn. Valid input: -d [true|false]"
                },
                {
                  "flags": "-u, --is-http-allowed [is-http-allowed]",
                  "required": 0,
                  "optional": -23,
                  "bool": true,
                  "short": "-u",
                  "long": "--is-http-allowed",
                  "description": "Is the http traffic allowed for the Cdn. Valid input: -u [true|false]"
                },
                {
                  "flags": "-w, --is-https-allowed [is-https-allowed]",
                  "required": 0,
                  "optional": -24,
                  "bool": true,
                  "short": "-w",
                  "long": "--is-https-allowed",
                  "description": "Is the https traffic allowed for the Cdn. Valid input: -w [true|false]"
                },
                {
                  "flags": "-q, --query-string-caching-behavior [query-string-caching-behavior]",
                  "required": 0,
                  "optional": -37,
                  "bool": true,
                  "short": "-q",
                  "long": "--query-string-caching-behavior",
                  "description": "The way Cdn handles requests with query string"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "The tags to associate with the Azure Cdn Endpoint"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete an endpoint by endpoint name, profile name, and resource group",
              "fullName": "cdn endpoint delete",
              "usage": "[options] <ename> <profile-name> <resource-group>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of the endpoint"
                },
                {
                  "flags": "-p, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "start",
              "description": "Start an endpoint by endpoint name, profile name, and resource group",
              "fullName": "cdn endpoint start",
              "usage": "[options] <name> <profile-name> <resource-group>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of the endpoint"
                },
                {
                  "flags": "-p, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "stop",
              "description": "Stop an endpoint by endpoint name, profile name, and resource group",
              "fullName": "cdn endpoint stop",
              "usage": "[options] <name> <profile-name> <resource-group>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of the endpoint"
                },
                {
                  "flags": "-p, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "purge",
              "description": "Purge the content of the given paths in the endpoint",
              "fullName": "cdn endpoint purge",
              "usage": "[options] <name> <profile-name> <resource-group>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of the endpoint"
                },
                {
                  "flags": "-p, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "-c, --content-paths <content-paths>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--content-paths",
                  "description": "Content paths to be purged"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "load",
              "description": "Load the content of the given paths in the endpoint",
              "fullName": "cdn endpoint load",
              "usage": "[options] <name> <profile-name> <resource-group>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of the endpoint"
                },
                {
                  "flags": "-p, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "-c, --content-paths <content-paths>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--content-paths",
                  "description": "Content paths to be purged"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "check",
              "description": "Check if the endpoint name has been used or not",
              "fullName": "cdn endpoint check",
              "usage": "[options] <endpoint-name>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --endpoint-name <endpoint-name>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--endpoint-name",
                  "description": "Endpoint name"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "checkUsage",
              "description": "List the usages of resources under endpoint.",
              "fullName": "cdn endpoint checkUsage",
              "usage": "[options] <name> <profile-name> <resource-group>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of the endpoint"
                },
                {
                  "flags": "-p, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "origin": {
          "name": "origin",
          "description": "Commands to manage Azure cdn profile endpoint origin",
          "fullName": "cdn origin",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "show",
              "description": "Get origin by origin name, endpoint name, profile name, and resource group",
              "fullName": "cdn origin show",
              "usage": "[options] <name> <endpoint-name> <profile-name> <resource-group>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of the origin"
                },
                {
                  "flags": "-e, --endpoint-name <endpoint-name>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--endpoint-name",
                  "description": "Name of the endpoint"
                },
                {
                  "flags": "-p, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "set",
              "description": "Update origin of the given origin name, endpoint name, profile name, and resource group",
              "fullName": "cdn origin set",
              "usage": "[options] <name> <endpoint-name> <profile-name> <resource-group> [host-name] [http-port] [https-port]",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of the origin"
                },
                {
                  "flags": "-e, --endpoint-name <endpoint-name>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--endpoint-name",
                  "description": "Name of the endpoint"
                },
                {
                  "flags": "-p, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "-o, --host-name [host-name]",
                  "required": 0,
                  "optional": -17,
                  "bool": true,
                  "short": "-o",
                  "long": "--host-name",
                  "description": "Host name"
                },
                {
                  "flags": "-r, --http-port [http-port]",
                  "required": 0,
                  "optional": -17,
                  "bool": true,
                  "short": "-r",
                  "long": "--http-port",
                  "description": "Http port"
                },
                {
                  "flags": "-w, --https-port [https-port]",
                  "required": 0,
                  "optional": -18,
                  "bool": true,
                  "short": "-w",
                  "long": "--https-port",
                  "description": "Https port"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "customDomain": {
          "name": "customDomain",
          "description": "Commands to manage Azure cdn profile endpoint custom domain",
          "fullName": "cdn customDomain",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List custom domains by endpoint name, profile name, and resource group",
              "fullName": "cdn customDomain list",
              "usage": "[options] <endpoint-name> <profile-name> <resource-group>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-e, --endpoint-name <endpoint-name>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--endpoint-name",
                  "description": "Name of the endpoint"
                },
                {
                  "flags": "-p, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Get custom domains by custom domain name, endpoint name, profile name, and resource group",
              "fullName": "cdn customDomain show",
              "usage": "[options] <name> <profile-name> <resource-group>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of the custom domain"
                },
                {
                  "flags": "-e, --endpoint-name <endpoint-name>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--endpoint-name",
                  "description": "Name of the endpoint"
                },
                {
                  "flags": "-p, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "create",
              "description": "Create a custom domain of a perticular custom domain host name",
              "fullName": "cdn customDomain create",
              "usage": "[options] <name> <endpoint-name> <profile-name> <resource-group> <custom-domain-host-name>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of the custom domain"
                },
                {
                  "flags": "-e, --endpoint-name <endpoint-name>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--endpoint-name",
                  "description": "Name of the endpoint"
                },
                {
                  "flags": "-p, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "-d, --custom-domain-host-name <custom-domain-host-name>",
                  "required": -31,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--custom-domain-host-name",
                  "description": "The host name of the custom domain"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a custom domain of a perticular custom domain host name",
              "fullName": "cdn customDomain delete",
              "usage": "[options] <name> <endpoint-name> <profile-name> <resource-group>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of the custom domain"
                },
                {
                  "flags": "-e, --endpoint-name <endpoint-name>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--endpoint-name",
                  "description": "Name of the endpoint"
                },
                {
                  "flags": "-p, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "validate",
              "description": "Check to see if a custom domain host name is registered for cname mapping to the endpoint ",
              "fullName": "cdn customDomain validate",
              "usage": "[options] <endpoint-name> <profile-name> <resource-group> <custom-domain-host-name>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-e, --endpoint-name <endpoint-name>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--endpoint-name",
                  "description": "Name of the endpoint"
                },
                {
                  "flags": "-p, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "-d, --custom-domain-host-name <custom-domain-host-name>",
                  "required": -31,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--custom-domain-host-name",
                  "description": "The host name of the custom domain"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "enableHttps",
              "description": "Enable https on the custom domain.",
              "fullName": "cdn customDomain enableHttps",
              "usage": "[options] <name> <endpoint-name> <profile-name> <resource-group>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of the custom domain"
                },
                {
                  "flags": "-e, --endpoint-name <endpoint-name>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--endpoint-name",
                  "description": "Name of the endpoint"
                },
                {
                  "flags": "-p, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "disableHttps",
              "description": "Disable https on the custom domain.",
              "fullName": "cdn customDomain disableHttps",
              "usage": "[options] <name> <endpoint-name> <profile-name> <resource-group>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of the custom domain"
                },
                {
                  "flags": "-e, --endpoint-name <endpoint-name>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--endpoint-name",
                  "description": "Name of the endpoint"
                },
                {
                  "flags": "-p, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "geofilter": {
          "name": "geofilter",
          "description": "Commands to manage Azure cdn profile endpoint geo filters",
          "fullName": "cdn geofilter",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List geo filters by endpoint name, profile name, and resource group",
              "fullName": "cdn geofilter list",
              "usage": "[options] <endpoint-name> <profile-name> <resource-group>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-e, --endpoint-name <endpoint-name>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--endpoint-name",
                  "description": "Name of the endpoint"
                },
                {
                  "flags": "-p, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "add",
              "description": "Add a geo filters by endpoint name, profile name, and resource group",
              "fullName": "cdn geofilter add",
              "usage": "[options] <relative-path> <endpoint-name> <profile-name> <resource-group> <action> <country-codes>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-r, --relative-path <relative-path>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--relative-path",
                  "description": "Relative path of the geo filter"
                },
                {
                  "flags": "-e, --endpoint-name <endpoint-name>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--endpoint-name",
                  "description": "Name of the endpoint"
                },
                {
                  "flags": "-p, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "-a, --action <action>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--action",
                  "description": "Action of the geo filter. Valid input: -a [Block|Allow]"
                },
                {
                  "flags": "-c, --country-codes <country-codes>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--country-codes",
                  "description": "List of country codes to apply the geo filter. Country codes are two letters and comma separated."
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "set",
              "description": "Update a geo filters by endpoint name, profile name, and resource group",
              "fullName": "cdn geofilter set",
              "usage": "[options] <relative-path> <endpoint-name> <profile-name> <resource-group> [action] [country-codes]",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-r, --relative-path <relative-path>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--relative-path",
                  "description": "Relative path of the geo filter. e.g. /mycars "
                },
                {
                  "flags": "-e, --endpoint-name <endpoint-name>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--endpoint-name",
                  "description": "Name of the endpoint"
                },
                {
                  "flags": "-p, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "-a, --action [action]",
                  "required": 0,
                  "optional": -14,
                  "bool": true,
                  "short": "-a",
                  "long": "--action",
                  "description": "Action of the geo filter. Block or Allow."
                },
                {
                  "flags": "-c, --country-codes [country-codes]",
                  "required": 0,
                  "optional": -21,
                  "bool": true,
                  "short": "-c",
                  "long": "--country-codes",
                  "description": "List of country codes to apply the geo filter. Country codes are two letters and comma separated."
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a geo filters by relative path, endpoint name, profile name, and resource group",
              "fullName": "cdn geofilter delete",
              "usage": "[options] <relative-path> <endpoint-name> <profile-name> <resource-group> <action> <country-codes>",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-r, --relative-path <relative-path>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--relative-path",
                  "description": "Relative path of the geo filter. e.g. /mycars "
                },
                {
                  "flags": "-e, --endpoint-name <endpoint-name>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--endpoint-name",
                  "description": "Name of the endpoint"
                },
                {
                  "flags": "-p, --profile-name <profile-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--profile-name",
                  "description": "Name of the profile"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group of the Azure Cdn Profile"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "edgeNode": {
          "name": "edgeNode",
          "description": "Commands to get edge nodes of Azure CDN service",
          "fullName": "cdn edgeNode",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "Get the edge node list of Azure CDN service",
              "fullName": "cdn edgeNode list",
              "usage": "[options]",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "usage": {
          "name": "usage",
          "description": "Commands to get the usage of subscription",
          "fullName": "cdn usage",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List the usages of resources under subscription",
              "fullName": "cdn usage list",
              "usage": "[options]",
              "filePath": "commands/arm/cdnmanagement/cdnmanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        }
      }
    },
    "managed-disk": {
      "name": "managed-disk",
      "description": "Commands to manage your disks.  ",
      "fullName": "managed-disk",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "create",
          "description": "Creates or updates a disk.",
          "fullName": "managed-disk create",
          "usage": "[options] <resource-group> <name> <disk>",
          "filePath": "commands/arm/compute/disks.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "--disk <disk>",
              "required": -8,
              "optional": 0,
              "bool": true,
              "long": "--disk",
              "description": "A string of parameters in JSON format"
            },
            {
              "flags": "--parameter-file <parameter-file>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "long": "--parameter-file",
              "description": "The text file that contains input parameter object in JSON format"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "delete",
          "description": "Deletes a disk.",
          "fullName": "managed-disk delete",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/compute/disks.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "show",
          "description": "Gets information about a disk.",
          "fullName": "managed-disk show",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/compute/disks.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "grant-access",
          "description": "Grants access to a disk.",
          "fullName": "managed-disk grant-access",
          "usage": "[options] <resource-group> <name> <grant-access-data>",
          "filePath": "commands/arm/compute/disks.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "--grant-access-data <grant-access-data>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "long": "--grant-access-data",
              "description": "A string of parameters in JSON format"
            },
            {
              "flags": "--parameter-file <parameter-file>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "long": "--parameter-file",
              "description": "The text file that contains input parameter object in JSON format"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "list",
          "description": "Lists all the disks under a resource group.",
          "fullName": "managed-disk list",
          "usage": "[options] <resource-group>",
          "filePath": "commands/arm/compute/disks.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "revoke-access",
          "description": "Revokes access to a disk.",
          "fullName": "managed-disk revoke-access",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/compute/disks.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "update",
          "description": "Updates (patches) a disk.",
          "fullName": "managed-disk update",
          "usage": "[options] <resource-group> <name> <disk>",
          "filePath": "commands/arm/compute/disks.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "--disk <disk>",
              "required": -8,
              "optional": 0,
              "bool": true,
              "long": "--disk",
              "description": "A string of parameters in JSON format"
            },
            {
              "flags": "--parameter-file <parameter-file>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "long": "--parameter-file",
              "description": "The text file that contains input parameter object in JSON format"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        }
      ],
      "categories": {
        "config": {
          "name": "config",
          "description": "Commands to manage configuration of disks in the parameter file.",
          "fullName": "managed-disk config",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Generate disksCreateOrUpdate parameter string or files.",
              "fullName": "managed-disk config create",
              "usage": "[options]",
              "filePath": "commands/arm/compute/disks.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                }
              ]
            },
            {
              "name": "patch",
              "description": "Command to patch disksCreateOrUpdate parameter JSON file.",
              "fullName": "managed-disk config patch",
              "usage": "[options]",
              "filePath": "commands/arm/compute/disks.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                },
                {
                  "flags": "--operation <operation>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--operation",
                  "description": "The JSON patch operation: add, remove, or replace."
                },
                {
                  "flags": "--path <path>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--path",
                  "description": "The JSON data path, e.g.: \"foo/1\"."
                },
                {
                  "flags": "--value <value>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--value",
                  "description": "The JSON value."
                },
                {
                  "flags": "--parse",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--parse",
                  "description": "Parse the JSON value to object."
                }
              ]
            }
          ],
          "categories": {
            "disk": {
              "name": "disk",
              "description": "Commands to configure disk of managed-disk in config file.",
              "fullName": "managed-disk config disk",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set disk in config string or files, e.g. \r\n{\r\n  \"managedBy\":\"\",\r\n  \"sku\":{\r\n    \"name\":null,\r\n    \"tier\":\"\"\r\n  },\r\n  \"zones\":[\r\n    \"\"\r\n  ],\r\n  \"timeCreated\":null,\r\n  \"osType\":null,\r\n  \"creationData\":{\r\n    \"createOption\":\"\",\r\n    \"storageAccountId\":\"\",\r\n    \"imageReference\":{\r\n      \"id\":\"\",\r\n      \"lun\":null\r\n    },\r\n    \"sourceUri\":\"\",\r\n    \"sourceResourceId\":\"\"\r\n  },\r\n  \"diskSizeGB\":null,\r\n  \"encryptionSettings\":{\r\n    \"enabled\":null,\r\n    \"diskEncryptionKey\":{\r\n      \"sourceVault\":{\r\n        \"id\":\"\"\r\n      },\r\n      \"secretUrl\":\"\"\r\n    },\r\n    \"keyEncryptionKey\":{\r\n      \"sourceVault\":{\r\n        \"id\":\"\"\r\n      },\r\n      \"keyUrl\":\"\"\r\n    }\r\n  },\r\n  \"provisioningState\":\"\",\r\n  \"id\":null,\r\n  \"name\":null,\r\n  \"type\":null,\r\n  \"location\":\"\",\r\n  \"tags\":{\r\n  }\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk config disk set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--managed-by <managedBy>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--managed-by",
                      "description": "Set the managed-by value."
                    },
                    {
                      "flags": "--sku <sku>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--sku",
                      "description": "Set the sku value."
                    },
                    {
                      "flags": "--zones <zones>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--zones",
                      "description": "Set the zones value."
                    },
                    {
                      "flags": "--time-created <timeCreated>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--time-created",
                      "description": "Set the time-created value."
                    },
                    {
                      "flags": "--os-type <osType>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-type",
                      "description": "Set the os-type value."
                    },
                    {
                      "flags": "--creation-data <creationData>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--creation-data",
                      "description": "Set the creation-data value."
                    },
                    {
                      "flags": "--disk-size-g-b <diskSizeGB>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-size-g-b",
                      "description": "Set the disk-size-g-b value."
                    },
                    {
                      "flags": "--encryption-settings <encryptionSettings>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "long": "--encryption-settings",
                      "description": "Set the encryption-settings value."
                    },
                    {
                      "flags": "--provisioning-state <provisioningState>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--provisioning-state",
                      "description": "Set the provisioning-state value."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--type <type>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Set the type value."
                    },
                    {
                      "flags": "--location <location>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--location",
                      "description": "Set the location value."
                    },
                    {
                      "flags": "--tags <tags>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--tags",
                      "description": "Set the tags value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove disk in config string or files, e.g. \r\n{\r\n  \"managedBy\":\"\",\r\n  \"sku\":{\r\n    \"name\":null,\r\n    \"tier\":\"\"\r\n  },\r\n  \"zones\":[\r\n    \"\"\r\n  ],\r\n  \"timeCreated\":null,\r\n  \"osType\":null,\r\n  \"creationData\":{\r\n    \"createOption\":\"\",\r\n    \"storageAccountId\":\"\",\r\n    \"imageReference\":{\r\n      \"id\":\"\",\r\n      \"lun\":null\r\n    },\r\n    \"sourceUri\":\"\",\r\n    \"sourceResourceId\":\"\"\r\n  },\r\n  \"diskSizeGB\":null,\r\n  \"encryptionSettings\":{\r\n    \"enabled\":null,\r\n    \"diskEncryptionKey\":{\r\n      \"sourceVault\":{\r\n        \"id\":\"\"\r\n      },\r\n      \"secretUrl\":\"\"\r\n    },\r\n    \"keyEncryptionKey\":{\r\n      \"sourceVault\":{\r\n        \"id\":\"\"\r\n      },\r\n      \"keyUrl\":\"\"\r\n    }\r\n  },\r\n  \"provisioningState\":\"\",\r\n  \"id\":null,\r\n  \"name\":null,\r\n  \"type\":null,\r\n  \"location\":\"\",\r\n  \"tags\":{\r\n  }\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk config disk delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--managed-by",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--managed-by",
                      "description": "Remove the managed-by value."
                    },
                    {
                      "flags": "--sku",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--sku",
                      "description": "Remove the sku value."
                    },
                    {
                      "flags": "--zones",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--zones",
                      "description": "Remove the zones value."
                    },
                    {
                      "flags": "--time-created",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--time-created",
                      "description": "Remove the time-created value."
                    },
                    {
                      "flags": "--os-type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-type",
                      "description": "Remove the os-type value."
                    },
                    {
                      "flags": "--creation-data",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--creation-data",
                      "description": "Remove the creation-data value."
                    },
                    {
                      "flags": "--disk-size-g-b",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-size-g-b",
                      "description": "Remove the disk-size-g-b value."
                    },
                    {
                      "flags": "--encryption-settings",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--encryption-settings",
                      "description": "Remove the encryption-settings value."
                    },
                    {
                      "flags": "--provisioning-state",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--provisioning-state",
                      "description": "Remove the provisioning-state value."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Remove the type value."
                    },
                    {
                      "flags": "--location",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--location",
                      "description": "Remove the location value."
                    },
                    {
                      "flags": "--tags",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--tags",
                      "description": "Remove the tags value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "sku": {
              "name": "sku",
              "description": "Commands to configure sku of managed-disk in config file.",
              "fullName": "managed-disk config sku",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set sku in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sku\" : {\r\n             \"name\":null,\r\n             \"tier\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk config sku set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--tier <tier>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--tier",
                      "description": "Set the tier value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove sku in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sku\" : {\r\n             \"name\":null,\r\n             \"tier\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk config sku delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--tier",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--tier",
                      "description": "Remove the tier value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "zones": {
              "name": "zones",
              "description": "Commands to configure zones of managed-disk in config file.",
              "fullName": "managed-disk config zones",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set zones in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"zones\" : \"\"\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk config zones set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove zones in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"zones\" : \"\"\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk config zones delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "creation-data": {
              "name": "creation-data",
              "description": "Commands to configure creation-data of managed-disk in config file.",
              "fullName": "managed-disk config creation-data",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set creation-data in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"creationData\" : {\r\n             \"createOption\":\"\",\r\n             \"storageAccountId\":\"\",\r\n             \"imageReference\":{\r\n               \"id\":\"\",\r\n               \"lun\":null\r\n             },\r\n             \"sourceUri\":\"\",\r\n             \"sourceResourceId\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk config creation-data set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--create-option <createOption>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--create-option",
                      "description": "Set the create-option value."
                    },
                    {
                      "flags": "--storage-account-id <storageAccountId>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-account-id",
                      "description": "Set the storage-account-id value."
                    },
                    {
                      "flags": "--image-reference <imageReference>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--image-reference",
                      "description": "Set the image-reference value."
                    },
                    {
                      "flags": "--source-uri <sourceUri>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-uri",
                      "description": "Set the source-uri value."
                    },
                    {
                      "flags": "--source-resource-id <sourceResourceId>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-resource-id",
                      "description": "Set the source-resource-id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove creation-data in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"creationData\" : {\r\n             \"createOption\":\"\",\r\n             \"storageAccountId\":\"\",\r\n             \"imageReference\":{\r\n               \"id\":\"\",\r\n               \"lun\":null\r\n             },\r\n             \"sourceUri\":\"\",\r\n             \"sourceResourceId\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk config creation-data delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--create-option",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--create-option",
                      "description": "Remove the create-option value."
                    },
                    {
                      "flags": "--storage-account-id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-account-id",
                      "description": "Remove the storage-account-id value."
                    },
                    {
                      "flags": "--image-reference",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--image-reference",
                      "description": "Remove the image-reference value."
                    },
                    {
                      "flags": "--source-uri",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-uri",
                      "description": "Remove the source-uri value."
                    },
                    {
                      "flags": "--source-resource-id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-resource-id",
                      "description": "Remove the source-resource-id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "image-reference": {
              "name": "image-reference",
              "description": "Commands to configure image-reference of managed-disk in config file.",
              "fullName": "managed-disk config image-reference",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set image-reference in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"imageReference\" : {\r\n             \"id\":\"\",\r\n             \"lun\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk config image-reference set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    },
                    {
                      "flags": "--lun <lun>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--lun",
                      "description": "Set the lun value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove image-reference in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"imageReference\" : {\r\n             \"id\":\"\",\r\n             \"lun\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk config image-reference delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    },
                    {
                      "flags": "--lun",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--lun",
                      "description": "Remove the lun value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "encryption-settings": {
              "name": "encryption-settings",
              "description": "Commands to configure encryption-settings of managed-disk in config file.",
              "fullName": "managed-disk config encryption-settings",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set encryption-settings in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"encryptionSettings\" : {\r\n             \"enabled\":null,\r\n             \"diskEncryptionKey\":{\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               },\r\n               \"secretUrl\":\"\"\r\n             },\r\n             \"keyEncryptionKey\":{\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               },\r\n               \"keyUrl\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk config encryption-settings set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--enabled <enabled>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--enabled",
                      "description": "Set the enabled value."
                    },
                    {
                      "flags": "--disk-encryption-key <diskEncryptionKey>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-encryption-key",
                      "description": "Set the disk-encryption-key value."
                    },
                    {
                      "flags": "--key-encryption-key <keyEncryptionKey>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-encryption-key",
                      "description": "Set the key-encryption-key value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove encryption-settings in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"encryptionSettings\" : {\r\n             \"enabled\":null,\r\n             \"diskEncryptionKey\":{\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               },\r\n               \"secretUrl\":\"\"\r\n             },\r\n             \"keyEncryptionKey\":{\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               },\r\n               \"keyUrl\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk config encryption-settings delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--enabled",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--enabled",
                      "description": "Remove the enabled value."
                    },
                    {
                      "flags": "--disk-encryption-key",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-encryption-key",
                      "description": "Remove the disk-encryption-key value."
                    },
                    {
                      "flags": "--key-encryption-key",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-encryption-key",
                      "description": "Remove the key-encryption-key value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "disk-encryption-key": {
              "name": "disk-encryption-key",
              "description": "Commands to configure disk-encryption-key of managed-disk in config file.",
              "fullName": "managed-disk config disk-encryption-key",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set disk-encryption-key in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"diskEncryptionKey\" : {\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"secretUrl\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk config disk-encryption-key set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--source-vault <sourceVault>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Set the source-vault value."
                    },
                    {
                      "flags": "--secret-url <secretUrl>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--secret-url",
                      "description": "Set the secret-url value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove disk-encryption-key in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"diskEncryptionKey\" : {\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"secretUrl\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk config disk-encryption-key delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--source-vault",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Remove the source-vault value."
                    },
                    {
                      "flags": "--secret-url",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--secret-url",
                      "description": "Remove the secret-url value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "source-vault": {
              "name": "source-vault",
              "description": "Commands to configure source-vault of managed-disk in config file.",
              "fullName": "managed-disk config source-vault",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set source-vault in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk config source-vault set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove source-vault in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk config source-vault delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "key-encryption-key": {
              "name": "key-encryption-key",
              "description": "Commands to configure key-encryption-key of managed-disk in config file.",
              "fullName": "managed-disk config key-encryption-key",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set key-encryption-key in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"keyEncryptionKey\" : {\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"keyUrl\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk config key-encryption-key set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--source-vault <sourceVault>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Set the source-vault value."
                    },
                    {
                      "flags": "--key-url <keyUrl>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-url",
                      "description": "Set the key-url value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove key-encryption-key in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"keyEncryptionKey\" : {\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"keyUrl\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk config key-encryption-key delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--source-vault",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Remove the source-vault value."
                    },
                    {
                      "flags": "--key-url",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-url",
                      "description": "Remove the key-url value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "key-encryption-key-source-vault": {
              "name": "key-encryption-key-source-vault",
              "description": "Commands to configure key-encryption-key-source-vault of managed-disk in config file.",
              "fullName": "managed-disk config key-encryption-key-source-vault",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set key-encryption-key-source-vault in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk config key-encryption-key-source-vault set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove key-encryption-key-source-vault in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk config key-encryption-key-source-vault delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "grant-access-parameters": {
          "name": "grant-access-parameters",
          "description": "Commands to manage configuration of disks in the parameter file.",
          "fullName": "managed-disk grant-access-parameters",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Generate disksGrantAccess parameter string or files.",
              "fullName": "managed-disk grant-access-parameters create",
              "usage": "[options]",
              "filePath": "commands/arm/compute/disks.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                }
              ]
            },
            {
              "name": "patch",
              "description": "Command to patch disksGrantAccess parameter JSON file.",
              "fullName": "managed-disk grant-access-parameters patch",
              "usage": "[options]",
              "filePath": "commands/arm/compute/disks.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                },
                {
                  "flags": "--operation <operation>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--operation",
                  "description": "The JSON patch operation: add, remove, or replace."
                },
                {
                  "flags": "--path <path>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--path",
                  "description": "The JSON data path, e.g.: \"foo/1\"."
                },
                {
                  "flags": "--value <value>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--value",
                  "description": "The JSON value."
                },
                {
                  "flags": "--parse",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--parse",
                  "description": "Parse the JSON value to object."
                }
              ]
            }
          ],
          "categories": {
            "grant-access-data": {
              "name": "grant-access-data",
              "description": "Commands to configure grant-access-data of managed-disk in grant-access-parameters file.",
              "fullName": "managed-disk grant-access-parameters grant-access-data",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set grant-access-data in grant-access-parameters string or files, e.g. \r\n{\r\n  \"access\":\"\",\r\n  \"durationInSeconds\":\"\"\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk grant-access-parameters grant-access-data set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--access <access>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--access",
                      "description": "Set the access value."
                    },
                    {
                      "flags": "--duration-in-seconds <durationInSeconds>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "long": "--duration-in-seconds",
                      "description": "Set the duration-in-seconds value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove grant-access-data in grant-access-parameters string or files, e.g. \r\n{\r\n  \"access\":\"\",\r\n  \"durationInSeconds\":\"\"\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk grant-access-parameters grant-access-data delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--access",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--access",
                      "description": "Remove the access value."
                    },
                    {
                      "flags": "--duration-in-seconds",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--duration-in-seconds",
                      "description": "Remove the duration-in-seconds value."
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "update-parameters": {
          "name": "update-parameters",
          "description": "Commands to manage configuration of disks in the parameter file.",
          "fullName": "managed-disk update-parameters",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Generate disksUpdate parameter string or files.",
              "fullName": "managed-disk update-parameters create",
              "usage": "[options]",
              "filePath": "commands/arm/compute/disks.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                }
              ]
            },
            {
              "name": "patch",
              "description": "Command to patch disksUpdate parameter JSON file.",
              "fullName": "managed-disk update-parameters patch",
              "usage": "[options]",
              "filePath": "commands/arm/compute/disks.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                },
                {
                  "flags": "--operation <operation>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--operation",
                  "description": "The JSON patch operation: add, remove, or replace."
                },
                {
                  "flags": "--path <path>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--path",
                  "description": "The JSON data path, e.g.: \"foo/1\"."
                },
                {
                  "flags": "--value <value>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--value",
                  "description": "The JSON value."
                },
                {
                  "flags": "--parse",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--parse",
                  "description": "Parse the JSON value to object."
                }
              ]
            }
          ],
          "categories": {
            "disk-update": {
              "name": "disk-update",
              "description": "Commands to configure disk-update of managed-disk in update-parameters file.",
              "fullName": "managed-disk update-parameters disk-update",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set disk-update in update-parameters string or files, e.g. \r\n{\r\n  \"osType\":null,\r\n  \"diskSizeGB\":null,\r\n  \"encryptionSettings\":{\r\n    \"enabled\":null,\r\n    \"diskEncryptionKey\":{\r\n      \"sourceVault\":{\r\n        \"id\":\"\"\r\n      },\r\n      \"secretUrl\":\"\"\r\n    },\r\n    \"keyEncryptionKey\":{\r\n      \"sourceVault\":{\r\n        \"id\":\"\"\r\n      },\r\n      \"keyUrl\":\"\"\r\n    }\r\n  },\r\n  \"tags\":{\r\n  },\r\n  \"sku\":{\r\n    \"name\":null,\r\n    \"tier\":\"\"\r\n  }\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk update-parameters disk-update set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--os-type <osType>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-type",
                      "description": "Set the os-type value."
                    },
                    {
                      "flags": "--disk-size-g-b <diskSizeGB>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-size-g-b",
                      "description": "Set the disk-size-g-b value."
                    },
                    {
                      "flags": "--encryption-settings <encryptionSettings>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "long": "--encryption-settings",
                      "description": "Set the encryption-settings value."
                    },
                    {
                      "flags": "--tags <tags>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--tags",
                      "description": "Set the tags value."
                    },
                    {
                      "flags": "--sku <sku>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--sku",
                      "description": "Set the sku value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove disk-update in update-parameters string or files, e.g. \r\n{\r\n  \"osType\":null,\r\n  \"diskSizeGB\":null,\r\n  \"encryptionSettings\":{\r\n    \"enabled\":null,\r\n    \"diskEncryptionKey\":{\r\n      \"sourceVault\":{\r\n        \"id\":\"\"\r\n      },\r\n      \"secretUrl\":\"\"\r\n    },\r\n    \"keyEncryptionKey\":{\r\n      \"sourceVault\":{\r\n        \"id\":\"\"\r\n      },\r\n      \"keyUrl\":\"\"\r\n    }\r\n  },\r\n  \"tags\":{\r\n  },\r\n  \"sku\":{\r\n    \"name\":null,\r\n    \"tier\":\"\"\r\n  }\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk update-parameters disk-update delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--os-type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-type",
                      "description": "Remove the os-type value."
                    },
                    {
                      "flags": "--disk-size-g-b",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-size-g-b",
                      "description": "Remove the disk-size-g-b value."
                    },
                    {
                      "flags": "--encryption-settings",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--encryption-settings",
                      "description": "Remove the encryption-settings value."
                    },
                    {
                      "flags": "--tags",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--tags",
                      "description": "Remove the tags value."
                    },
                    {
                      "flags": "--sku",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--sku",
                      "description": "Remove the sku value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "encryption-settings": {
              "name": "encryption-settings",
              "description": "Commands to configure encryption-settings of managed-disk in update-parameters file.",
              "fullName": "managed-disk update-parameters encryption-settings",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set encryption-settings in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"encryptionSettings\" : {\r\n             \"enabled\":null,\r\n             \"diskEncryptionKey\":{\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               },\r\n               \"secretUrl\":\"\"\r\n             },\r\n             \"keyEncryptionKey\":{\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               },\r\n               \"keyUrl\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk update-parameters encryption-settings set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--enabled <enabled>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--enabled",
                      "description": "Set the enabled value."
                    },
                    {
                      "flags": "--disk-encryption-key <diskEncryptionKey>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-encryption-key",
                      "description": "Set the disk-encryption-key value."
                    },
                    {
                      "flags": "--key-encryption-key <keyEncryptionKey>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-encryption-key",
                      "description": "Set the key-encryption-key value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove encryption-settings in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"encryptionSettings\" : {\r\n             \"enabled\":null,\r\n             \"diskEncryptionKey\":{\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               },\r\n               \"secretUrl\":\"\"\r\n             },\r\n             \"keyEncryptionKey\":{\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               },\r\n               \"keyUrl\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk update-parameters encryption-settings delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--enabled",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--enabled",
                      "description": "Remove the enabled value."
                    },
                    {
                      "flags": "--disk-encryption-key",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-encryption-key",
                      "description": "Remove the disk-encryption-key value."
                    },
                    {
                      "flags": "--key-encryption-key",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-encryption-key",
                      "description": "Remove the key-encryption-key value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "disk-encryption-key": {
              "name": "disk-encryption-key",
              "description": "Commands to configure disk-encryption-key of managed-disk in update-parameters file.",
              "fullName": "managed-disk update-parameters disk-encryption-key",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set disk-encryption-key in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"diskEncryptionKey\" : {\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"secretUrl\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk update-parameters disk-encryption-key set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--source-vault <sourceVault>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Set the source-vault value."
                    },
                    {
                      "flags": "--secret-url <secretUrl>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--secret-url",
                      "description": "Set the secret-url value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove disk-encryption-key in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"diskEncryptionKey\" : {\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"secretUrl\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk update-parameters disk-encryption-key delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--source-vault",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Remove the source-vault value."
                    },
                    {
                      "flags": "--secret-url",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--secret-url",
                      "description": "Remove the secret-url value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "source-vault": {
              "name": "source-vault",
              "description": "Commands to configure source-vault of managed-disk in update-parameters file.",
              "fullName": "managed-disk update-parameters source-vault",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set source-vault in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk update-parameters source-vault set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove source-vault in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk update-parameters source-vault delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "key-encryption-key": {
              "name": "key-encryption-key",
              "description": "Commands to configure key-encryption-key of managed-disk in update-parameters file.",
              "fullName": "managed-disk update-parameters key-encryption-key",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set key-encryption-key in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"keyEncryptionKey\" : {\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"keyUrl\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk update-parameters key-encryption-key set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--source-vault <sourceVault>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Set the source-vault value."
                    },
                    {
                      "flags": "--key-url <keyUrl>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-url",
                      "description": "Set the key-url value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove key-encryption-key in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"keyEncryptionKey\" : {\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"keyUrl\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk update-parameters key-encryption-key delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--source-vault",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Remove the source-vault value."
                    },
                    {
                      "flags": "--key-url",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-url",
                      "description": "Remove the key-url value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "key-encryption-key-source-vault": {
              "name": "key-encryption-key-source-vault",
              "description": "Commands to configure key-encryption-key-source-vault of managed-disk in update-parameters file.",
              "fullName": "managed-disk update-parameters key-encryption-key-source-vault",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set key-encryption-key-source-vault in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk update-parameters key-encryption-key-source-vault set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove key-encryption-key-source-vault in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk update-parameters key-encryption-key-source-vault delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "sku": {
              "name": "sku",
              "description": "Commands to configure sku of managed-disk in update-parameters file.",
              "fullName": "managed-disk update-parameters sku",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set sku in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"sku\" : {\r\n             \"name\":null,\r\n             \"tier\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk update-parameters sku set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--tier <tier>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--tier",
                      "description": "Set the tier value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove sku in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"sku\" : {\r\n             \"name\":null,\r\n             \"tier\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-disk update-parameters sku delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/disks.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--tier",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--tier",
                      "description": "Remove the tier value."
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        }
      }
    },
    "managed-image": {
      "name": "managed-image",
      "description": "Commands to manage your images.  ",
      "fullName": "managed-image",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "create",
          "description": "Create or update an image.",
          "fullName": "managed-image create",
          "usage": "[options] <resource-group> <name> <parameters>",
          "filePath": "commands/arm/compute/images.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-p, --parameters <parameters>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--parameters",
              "description": "A string of parameters in JSON format"
            },
            {
              "flags": "--parameter-file <parameter-file>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "long": "--parameter-file",
              "description": "The text file that contains input parameter object in JSON format"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "delete",
          "description": "Deletes an Image.",
          "fullName": "managed-image delete",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/compute/images.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "show",
          "description": "Gets an image.",
          "fullName": "managed-image show",
          "usage": "[options] <resource-group> <name> <expand>",
          "filePath": "commands/arm/compute/images.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "--expand <expand>",
              "required": -10,
              "optional": 0,
              "bool": true,
              "long": "--expand",
              "description": "expand"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "list",
          "description": "Gets the list of images under a resource group.",
          "fullName": "managed-image list",
          "usage": "[options] <resource-group>",
          "filePath": "commands/arm/compute/images.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        }
      ],
      "categories": {
        "config": {
          "name": "config",
          "description": "Commands to manage configuration of images in the parameter file.",
          "fullName": "managed-image config",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Generate imagesCreateOrUpdate parameter string or files.",
              "fullName": "managed-image config create",
              "usage": "[options]",
              "filePath": "commands/arm/compute/images.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                }
              ]
            },
            {
              "name": "patch",
              "description": "Command to patch imagesCreateOrUpdate parameter JSON file.",
              "fullName": "managed-image config patch",
              "usage": "[options]",
              "filePath": "commands/arm/compute/images.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                },
                {
                  "flags": "--operation <operation>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--operation",
                  "description": "The JSON patch operation: add, remove, or replace."
                },
                {
                  "flags": "--path <path>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--path",
                  "description": "The JSON data path, e.g.: \"foo/1\"."
                },
                {
                  "flags": "--value <value>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--value",
                  "description": "The JSON value."
                },
                {
                  "flags": "--parse",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--parse",
                  "description": "Parse the JSON value to object."
                }
              ]
            }
          ],
          "categories": {
            "image": {
              "name": "image",
              "description": "Commands to configure image of managed-image in config file.",
              "fullName": "managed-image config image",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set image in config string or files, e.g. \r\n{\r\n  \"sourceVirtualMachine\":{\r\n    \"id\":\"\"\r\n  },\r\n  \"storageProfile\":{\r\n    \"osDisk\":{\r\n      \"osType\":\"\",\r\n      \"osState\":\"\",\r\n      \"snapshot\":{\r\n        \"id\":\"\"\r\n      },\r\n      \"managedDisk\":{\r\n        \"id\":\"\"\r\n      },\r\n      \"blobUri\":\"\",\r\n      \"caching\":null,\r\n      \"diskSizeGB\":null,\r\n      \"storageAccountType\":null\r\n    },\r\n    \"dataDisks\":[\r\n      {\r\n        \"lun\":\"\",\r\n        \"snapshot\":{\r\n          \"id\":\"\"\r\n        },\r\n        \"managedDisk\":{\r\n          \"id\":\"\"\r\n        },\r\n        \"blobUri\":\"\",\r\n        \"caching\":null,\r\n        \"diskSizeGB\":null,\r\n        \"storageAccountType\":null\r\n      }\r\n    ]\r\n  },\r\n  \"provisioningState\":\"\",\r\n  \"id\":null,\r\n  \"name\":null,\r\n  \"type\":null,\r\n  \"location\":\"\",\r\n  \"tags\":{\r\n  }\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-image config image set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/images.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--source-virtual-machine <sourceVirtualMachine>",
                      "required": -26,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-virtual-machine",
                      "description": "Set the source-virtual-machine value."
                    },
                    {
                      "flags": "--storage-profile <storageProfile>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-profile",
                      "description": "Set the storage-profile value."
                    },
                    {
                      "flags": "--provisioning-state <provisioningState>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--provisioning-state",
                      "description": "Set the provisioning-state value."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--type <type>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Set the type value."
                    },
                    {
                      "flags": "--location <location>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--location",
                      "description": "Set the location value."
                    },
                    {
                      "flags": "--tags <tags>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--tags",
                      "description": "Set the tags value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove image in config string or files, e.g. \r\n{\r\n  \"sourceVirtualMachine\":{\r\n    \"id\":\"\"\r\n  },\r\n  \"storageProfile\":{\r\n    \"osDisk\":{\r\n      \"osType\":\"\",\r\n      \"osState\":\"\",\r\n      \"snapshot\":{\r\n        \"id\":\"\"\r\n      },\r\n      \"managedDisk\":{\r\n        \"id\":\"\"\r\n      },\r\n      \"blobUri\":\"\",\r\n      \"caching\":null,\r\n      \"diskSizeGB\":null,\r\n      \"storageAccountType\":null\r\n    },\r\n    \"dataDisks\":[\r\n      {\r\n        \"lun\":\"\",\r\n        \"snapshot\":{\r\n          \"id\":\"\"\r\n        },\r\n        \"managedDisk\":{\r\n          \"id\":\"\"\r\n        },\r\n        \"blobUri\":\"\",\r\n        \"caching\":null,\r\n        \"diskSizeGB\":null,\r\n        \"storageAccountType\":null\r\n      }\r\n    ]\r\n  },\r\n  \"provisioningState\":\"\",\r\n  \"id\":null,\r\n  \"name\":null,\r\n  \"type\":null,\r\n  \"location\":\"\",\r\n  \"tags\":{\r\n  }\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-image config image delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/images.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--source-virtual-machine",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-virtual-machine",
                      "description": "Remove the source-virtual-machine value."
                    },
                    {
                      "flags": "--storage-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-profile",
                      "description": "Remove the storage-profile value."
                    },
                    {
                      "flags": "--provisioning-state",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--provisioning-state",
                      "description": "Remove the provisioning-state value."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Remove the type value."
                    },
                    {
                      "flags": "--location",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--location",
                      "description": "Remove the location value."
                    },
                    {
                      "flags": "--tags",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--tags",
                      "description": "Remove the tags value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "source-virtual-machine": {
              "name": "source-virtual-machine",
              "description": "Commands to configure source-virtual-machine of managed-image in config file.",
              "fullName": "managed-image config source-virtual-machine",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set source-virtual-machine in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVirtualMachine\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-image config source-virtual-machine set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/images.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove source-virtual-machine in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVirtualMachine\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-image config source-virtual-machine delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/images.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "storage-profile": {
              "name": "storage-profile",
              "description": "Commands to configure storage-profile of managed-image in config file.",
              "fullName": "managed-image config storage-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set storage-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"storageProfile\" : {\r\n             \"osDisk\":{\r\n               \"osType\":\"\",\r\n               \"osState\":\"\",\r\n               \"snapshot\":{\r\n                 \"id\":\"\"\r\n               },\r\n               \"managedDisk\":{\r\n                 \"id\":\"\"\r\n               },\r\n               \"blobUri\":\"\",\r\n               \"caching\":null,\r\n               \"diskSizeGB\":null,\r\n               \"storageAccountType\":null\r\n             },\r\n             \"dataDisks\":[\r\n               {\r\n                 \"lun\":\"\",\r\n                 \"snapshot\":{\r\n                   \"id\":\"\"\r\n                 },\r\n                 \"managedDisk\":{\r\n                   \"id\":\"\"\r\n                 },\r\n                 \"blobUri\":\"\",\r\n                 \"caching\":null,\r\n                 \"diskSizeGB\":null,\r\n                 \"storageAccountType\":null\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-image config storage-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/images.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--os-disk <osDisk>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-disk",
                      "description": "Set the os-disk value."
                    },
                    {
                      "flags": "--data-disks <dataDisks>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--data-disks",
                      "description": "Set the data-disks value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove storage-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"storageProfile\" : {\r\n             \"osDisk\":{\r\n               \"osType\":\"\",\r\n               \"osState\":\"\",\r\n               \"snapshot\":{\r\n                 \"id\":\"\"\r\n               },\r\n               \"managedDisk\":{\r\n                 \"id\":\"\"\r\n               },\r\n               \"blobUri\":\"\",\r\n               \"caching\":null,\r\n               \"diskSizeGB\":null,\r\n               \"storageAccountType\":null\r\n             },\r\n             \"dataDisks\":[\r\n               {\r\n                 \"lun\":\"\",\r\n                 \"snapshot\":{\r\n                   \"id\":\"\"\r\n                 },\r\n                 \"managedDisk\":{\r\n                   \"id\":\"\"\r\n                 },\r\n                 \"blobUri\":\"\",\r\n                 \"caching\":null,\r\n                 \"diskSizeGB\":null,\r\n                 \"storageAccountType\":null\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-image config storage-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/images.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--os-disk",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-disk",
                      "description": "Remove the os-disk value."
                    },
                    {
                      "flags": "--data-disks",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--data-disks",
                      "description": "Remove the data-disks value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "os-disk": {
              "name": "os-disk",
              "description": "Commands to configure os-disk of managed-image in config file.",
              "fullName": "managed-image config os-disk",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set os-disk in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"osDisk\" : {\r\n             \"osType\":\"\",\r\n             \"osState\":\"\",\r\n             \"snapshot\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"managedDisk\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"blobUri\":\"\",\r\n             \"caching\":null,\r\n             \"diskSizeGB\":null,\r\n             \"storageAccountType\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-image config os-disk set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/images.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--os-type <osType>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-type",
                      "description": "Set the os-type value."
                    },
                    {
                      "flags": "--os-state <osState>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-state",
                      "description": "Set the os-state value."
                    },
                    {
                      "flags": "--snapshot <snapshot>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--snapshot",
                      "description": "Set the snapshot value."
                    },
                    {
                      "flags": "--managed-disk <managedDisk>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--managed-disk",
                      "description": "Set the managed-disk value."
                    },
                    {
                      "flags": "--blob-uri <blobUri>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--blob-uri",
                      "description": "Set the blob-uri value."
                    },
                    {
                      "flags": "--caching <caching>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--caching",
                      "description": "Set the caching value."
                    },
                    {
                      "flags": "--disk-size-g-b <diskSizeGB>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-size-g-b",
                      "description": "Set the disk-size-g-b value."
                    },
                    {
                      "flags": "--storage-account-type <storageAccountType>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-account-type",
                      "description": "Set the storage-account-type value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove os-disk in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"osDisk\" : {\r\n             \"osType\":\"\",\r\n             \"osState\":\"\",\r\n             \"snapshot\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"managedDisk\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"blobUri\":\"\",\r\n             \"caching\":null,\r\n             \"diskSizeGB\":null,\r\n             \"storageAccountType\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-image config os-disk delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/images.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--os-type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-type",
                      "description": "Remove the os-type value."
                    },
                    {
                      "flags": "--os-state",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-state",
                      "description": "Remove the os-state value."
                    },
                    {
                      "flags": "--snapshot",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--snapshot",
                      "description": "Remove the snapshot value."
                    },
                    {
                      "flags": "--managed-disk",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--managed-disk",
                      "description": "Remove the managed-disk value."
                    },
                    {
                      "flags": "--blob-uri",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--blob-uri",
                      "description": "Remove the blob-uri value."
                    },
                    {
                      "flags": "--caching",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--caching",
                      "description": "Remove the caching value."
                    },
                    {
                      "flags": "--disk-size-g-b",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-size-g-b",
                      "description": "Remove the disk-size-g-b value."
                    },
                    {
                      "flags": "--storage-account-type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-account-type",
                      "description": "Remove the storage-account-type value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "snapshot": {
              "name": "snapshot",
              "description": "Commands to configure snapshot of managed-image in config file.",
              "fullName": "managed-image config snapshot",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set snapshot in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"snapshot\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-image config snapshot set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/images.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove snapshot in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"snapshot\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-image config snapshot delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/images.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "managed-disk": {
              "name": "managed-disk",
              "description": "Commands to configure managed-disk of managed-image in config file.",
              "fullName": "managed-image config managed-disk",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set managed-disk in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"managedDisk\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-image config managed-disk set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/images.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove managed-disk in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"managedDisk\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-image config managed-disk delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/images.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "data-disks": {
              "name": "data-disks",
              "description": "Commands to configure data-disks of managed-image in config file.",
              "fullName": "managed-image config data-disks",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set data-disks in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"dataDisks\" : {\r\n             \"lun\":\"\",\r\n             \"snapshot\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"managedDisk\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"blobUri\":\"\",\r\n             \"caching\":null,\r\n             \"diskSizeGB\":null,\r\n             \"storageAccountType\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-image config data-disks set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/images.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--lun <lun>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--lun",
                      "description": "Set the lun value."
                    },
                    {
                      "flags": "--snapshot <snapshot>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--snapshot",
                      "description": "Set the snapshot value."
                    },
                    {
                      "flags": "--managed-disk <managedDisk>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--managed-disk",
                      "description": "Set the managed-disk value."
                    },
                    {
                      "flags": "--blob-uri <blobUri>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--blob-uri",
                      "description": "Set the blob-uri value."
                    },
                    {
                      "flags": "--caching <caching>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--caching",
                      "description": "Set the caching value."
                    },
                    {
                      "flags": "--disk-size-g-b <diskSizeGB>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-size-g-b",
                      "description": "Set the disk-size-g-b value."
                    },
                    {
                      "flags": "--storage-account-type <storageAccountType>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-account-type",
                      "description": "Set the storage-account-type value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove data-disks in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"dataDisks\" : {\r\n             \"lun\":\"\",\r\n             \"snapshot\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"managedDisk\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"blobUri\":\"\",\r\n             \"caching\":null,\r\n             \"diskSizeGB\":null,\r\n             \"storageAccountType\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-image config data-disks delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/images.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--lun",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--lun",
                      "description": "Remove the lun value."
                    },
                    {
                      "flags": "--snapshot",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--snapshot",
                      "description": "Remove the snapshot value."
                    },
                    {
                      "flags": "--managed-disk",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--managed-disk",
                      "description": "Remove the managed-disk value."
                    },
                    {
                      "flags": "--blob-uri",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--blob-uri",
                      "description": "Remove the blob-uri value."
                    },
                    {
                      "flags": "--caching",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--caching",
                      "description": "Remove the caching value."
                    },
                    {
                      "flags": "--disk-size-g-b",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-size-g-b",
                      "description": "Remove the disk-size-g-b value."
                    },
                    {
                      "flags": "--storage-account-type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-account-type",
                      "description": "Remove the storage-account-type value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "data-disks-snapshot": {
              "name": "data-disks-snapshot",
              "description": "Commands to configure data-disks-snapshot of managed-image in config file.",
              "fullName": "managed-image config data-disks-snapshot",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set data-disks-snapshot in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"snapshot\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-image config data-disks-snapshot set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/images.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--data-disks-index <data-disks-index>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--data-disks-index",
                      "description": "Indexer: data-disks-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove data-disks-snapshot in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"snapshot\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-image config data-disks-snapshot delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/images.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--data-disks-index <data-disks-index>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--data-disks-index",
                      "description": "Indexer: data-disks-index."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "data-disks-managed-disk": {
              "name": "data-disks-managed-disk",
              "description": "Commands to configure data-disks-managed-disk of managed-image in config file.",
              "fullName": "managed-image config data-disks-managed-disk",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set data-disks-managed-disk in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"managedDisk\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-image config data-disks-managed-disk set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/images.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--data-disks-index <data-disks-index>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--data-disks-index",
                      "description": "Indexer: data-disks-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove data-disks-managed-disk in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"managedDisk\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-image config data-disks-managed-disk delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/images.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--data-disks-index <data-disks-index>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--data-disks-index",
                      "description": "Indexer: data-disks-index."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        }
      }
    },
    "vm-resourcesku": {
      "name": "vm-resourcesku",
      "description": "Commands to manage your resource skus.  ",
      "fullName": "vm-resourcesku",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "list",
          "description": "Gets the list of Microsoft.Compute SKUs available for your Subscription.",
          "fullName": "vm-resourcesku list",
          "usage": "[options]",
          "filePath": "commands/arm/compute/resourceSkus.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        }
      ],
      "categories": {}
    },
    "managed-snapshot": {
      "name": "managed-snapshot",
      "description": "Commands to manage your snapshots.  ",
      "fullName": "managed-snapshot",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "create",
          "description": "Creates or updates a snapshot.",
          "fullName": "managed-snapshot create",
          "usage": "[options] <resource-group> <name> <snapshot>",
          "filePath": "commands/arm/compute/snapshots.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "--snapshot <snapshot>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "long": "--snapshot",
              "description": "A string of parameters in JSON format"
            },
            {
              "flags": "--parameter-file <parameter-file>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "long": "--parameter-file",
              "description": "The text file that contains input parameter object in JSON format"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "delete",
          "description": "Deletes a snapshot.",
          "fullName": "managed-snapshot delete",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/compute/snapshots.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "show",
          "description": "Gets information about a snapshot.",
          "fullName": "managed-snapshot show",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/compute/snapshots.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "grant-access",
          "description": "Grants access to a snapshot.",
          "fullName": "managed-snapshot grant-access",
          "usage": "[options] <resource-group> <name> <grant-access-data>",
          "filePath": "commands/arm/compute/snapshots.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "--grant-access-data <grant-access-data>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "long": "--grant-access-data",
              "description": "A string of parameters in JSON format"
            },
            {
              "flags": "--parameter-file <parameter-file>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "long": "--parameter-file",
              "description": "The text file that contains input parameter object in JSON format"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "list",
          "description": "Lists snapshots under a resource group.",
          "fullName": "managed-snapshot list",
          "usage": "[options] <resource-group>",
          "filePath": "commands/arm/compute/snapshots.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "revoke-access",
          "description": "Revokes access to a snapshot.",
          "fullName": "managed-snapshot revoke-access",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/compute/snapshots.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "update",
          "description": "Updates (patches) a snapshot.",
          "fullName": "managed-snapshot update",
          "usage": "[options] <resource-group> <name> <snapshot>",
          "filePath": "commands/arm/compute/snapshots.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "--snapshot <snapshot>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "long": "--snapshot",
              "description": "A string of parameters in JSON format"
            },
            {
              "flags": "--parameter-file <parameter-file>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "long": "--parameter-file",
              "description": "The text file that contains input parameter object in JSON format"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        }
      ],
      "categories": {
        "config": {
          "name": "config",
          "description": "Commands to manage configuration of snapshots in the parameter file.",
          "fullName": "managed-snapshot config",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Generate snapshotsCreateOrUpdate parameter string or files.",
              "fullName": "managed-snapshot config create",
              "usage": "[options]",
              "filePath": "commands/arm/compute/snapshots.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                }
              ]
            },
            {
              "name": "patch",
              "description": "Command to patch snapshotsCreateOrUpdate parameter JSON file.",
              "fullName": "managed-snapshot config patch",
              "usage": "[options]",
              "filePath": "commands/arm/compute/snapshots.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                },
                {
                  "flags": "--operation <operation>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--operation",
                  "description": "The JSON patch operation: add, remove, or replace."
                },
                {
                  "flags": "--path <path>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--path",
                  "description": "The JSON data path, e.g.: \"foo/1\"."
                },
                {
                  "flags": "--value <value>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--value",
                  "description": "The JSON value."
                },
                {
                  "flags": "--parse",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--parse",
                  "description": "Parse the JSON value to object."
                }
              ]
            }
          ],
          "categories": {
            "snapshot": {
              "name": "snapshot",
              "description": "Commands to configure snapshot of managed-snapshot in config file.",
              "fullName": "managed-snapshot config snapshot",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set snapshot in config string or files, e.g. \r\n{\r\n  \"managedBy\":\"\",\r\n  \"sku\":{\r\n    \"name\":null,\r\n    \"tier\":\"\"\r\n  },\r\n  \"timeCreated\":null,\r\n  \"osType\":null,\r\n  \"creationData\":{\r\n    \"createOption\":\"\",\r\n    \"storageAccountId\":\"\",\r\n    \"imageReference\":{\r\n      \"id\":\"\",\r\n      \"lun\":null\r\n    },\r\n    \"sourceUri\":\"\",\r\n    \"sourceResourceId\":\"\"\r\n  },\r\n  \"diskSizeGB\":null,\r\n  \"encryptionSettings\":{\r\n    \"enabled\":null,\r\n    \"diskEncryptionKey\":{\r\n      \"sourceVault\":{\r\n        \"id\":\"\"\r\n      },\r\n      \"secretUrl\":\"\"\r\n    },\r\n    \"keyEncryptionKey\":{\r\n      \"sourceVault\":{\r\n        \"id\":\"\"\r\n      },\r\n      \"keyUrl\":\"\"\r\n    }\r\n  },\r\n  \"provisioningState\":\"\",\r\n  \"id\":null,\r\n  \"name\":null,\r\n  \"type\":null,\r\n  \"location\":\"\",\r\n  \"tags\":{\r\n  }\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot config snapshot set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--managed-by <managedBy>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--managed-by",
                      "description": "Set the managed-by value."
                    },
                    {
                      "flags": "--sku <sku>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--sku",
                      "description": "Set the sku value."
                    },
                    {
                      "flags": "--time-created <timeCreated>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--time-created",
                      "description": "Set the time-created value."
                    },
                    {
                      "flags": "--os-type <osType>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-type",
                      "description": "Set the os-type value."
                    },
                    {
                      "flags": "--creation-data <creationData>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--creation-data",
                      "description": "Set the creation-data value."
                    },
                    {
                      "flags": "--disk-size-g-b <diskSizeGB>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-size-g-b",
                      "description": "Set the disk-size-g-b value."
                    },
                    {
                      "flags": "--encryption-settings <encryptionSettings>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "long": "--encryption-settings",
                      "description": "Set the encryption-settings value."
                    },
                    {
                      "flags": "--provisioning-state <provisioningState>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--provisioning-state",
                      "description": "Set the provisioning-state value."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--type <type>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Set the type value."
                    },
                    {
                      "flags": "--location <location>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--location",
                      "description": "Set the location value."
                    },
                    {
                      "flags": "--tags <tags>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--tags",
                      "description": "Set the tags value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove snapshot in config string or files, e.g. \r\n{\r\n  \"managedBy\":\"\",\r\n  \"sku\":{\r\n    \"name\":null,\r\n    \"tier\":\"\"\r\n  },\r\n  \"timeCreated\":null,\r\n  \"osType\":null,\r\n  \"creationData\":{\r\n    \"createOption\":\"\",\r\n    \"storageAccountId\":\"\",\r\n    \"imageReference\":{\r\n      \"id\":\"\",\r\n      \"lun\":null\r\n    },\r\n    \"sourceUri\":\"\",\r\n    \"sourceResourceId\":\"\"\r\n  },\r\n  \"diskSizeGB\":null,\r\n  \"encryptionSettings\":{\r\n    \"enabled\":null,\r\n    \"diskEncryptionKey\":{\r\n      \"sourceVault\":{\r\n        \"id\":\"\"\r\n      },\r\n      \"secretUrl\":\"\"\r\n    },\r\n    \"keyEncryptionKey\":{\r\n      \"sourceVault\":{\r\n        \"id\":\"\"\r\n      },\r\n      \"keyUrl\":\"\"\r\n    }\r\n  },\r\n  \"provisioningState\":\"\",\r\n  \"id\":null,\r\n  \"name\":null,\r\n  \"type\":null,\r\n  \"location\":\"\",\r\n  \"tags\":{\r\n  }\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot config snapshot delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--managed-by",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--managed-by",
                      "description": "Remove the managed-by value."
                    },
                    {
                      "flags": "--sku",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--sku",
                      "description": "Remove the sku value."
                    },
                    {
                      "flags": "--time-created",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--time-created",
                      "description": "Remove the time-created value."
                    },
                    {
                      "flags": "--os-type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-type",
                      "description": "Remove the os-type value."
                    },
                    {
                      "flags": "--creation-data",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--creation-data",
                      "description": "Remove the creation-data value."
                    },
                    {
                      "flags": "--disk-size-g-b",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-size-g-b",
                      "description": "Remove the disk-size-g-b value."
                    },
                    {
                      "flags": "--encryption-settings",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--encryption-settings",
                      "description": "Remove the encryption-settings value."
                    },
                    {
                      "flags": "--provisioning-state",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--provisioning-state",
                      "description": "Remove the provisioning-state value."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Remove the type value."
                    },
                    {
                      "flags": "--location",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--location",
                      "description": "Remove the location value."
                    },
                    {
                      "flags": "--tags",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--tags",
                      "description": "Remove the tags value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "sku": {
              "name": "sku",
              "description": "Commands to configure sku of managed-snapshot in config file.",
              "fullName": "managed-snapshot config sku",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set sku in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sku\" : {\r\n             \"name\":null,\r\n             \"tier\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot config sku set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--tier <tier>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--tier",
                      "description": "Set the tier value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove sku in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sku\" : {\r\n             \"name\":null,\r\n             \"tier\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot config sku delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--tier",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--tier",
                      "description": "Remove the tier value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "creation-data": {
              "name": "creation-data",
              "description": "Commands to configure creation-data of managed-snapshot in config file.",
              "fullName": "managed-snapshot config creation-data",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set creation-data in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"creationData\" : {\r\n             \"createOption\":\"\",\r\n             \"storageAccountId\":\"\",\r\n             \"imageReference\":{\r\n               \"id\":\"\",\r\n               \"lun\":null\r\n             },\r\n             \"sourceUri\":\"\",\r\n             \"sourceResourceId\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot config creation-data set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--create-option <createOption>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--create-option",
                      "description": "Set the create-option value."
                    },
                    {
                      "flags": "--storage-account-id <storageAccountId>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-account-id",
                      "description": "Set the storage-account-id value."
                    },
                    {
                      "flags": "--image-reference <imageReference>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--image-reference",
                      "description": "Set the image-reference value."
                    },
                    {
                      "flags": "--source-uri <sourceUri>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-uri",
                      "description": "Set the source-uri value."
                    },
                    {
                      "flags": "--source-resource-id <sourceResourceId>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-resource-id",
                      "description": "Set the source-resource-id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove creation-data in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"creationData\" : {\r\n             \"createOption\":\"\",\r\n             \"storageAccountId\":\"\",\r\n             \"imageReference\":{\r\n               \"id\":\"\",\r\n               \"lun\":null\r\n             },\r\n             \"sourceUri\":\"\",\r\n             \"sourceResourceId\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot config creation-data delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--create-option",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--create-option",
                      "description": "Remove the create-option value."
                    },
                    {
                      "flags": "--storage-account-id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-account-id",
                      "description": "Remove the storage-account-id value."
                    },
                    {
                      "flags": "--image-reference",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--image-reference",
                      "description": "Remove the image-reference value."
                    },
                    {
                      "flags": "--source-uri",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-uri",
                      "description": "Remove the source-uri value."
                    },
                    {
                      "flags": "--source-resource-id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-resource-id",
                      "description": "Remove the source-resource-id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "image-reference": {
              "name": "image-reference",
              "description": "Commands to configure image-reference of managed-snapshot in config file.",
              "fullName": "managed-snapshot config image-reference",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set image-reference in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"imageReference\" : {\r\n             \"id\":\"\",\r\n             \"lun\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot config image-reference set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    },
                    {
                      "flags": "--lun <lun>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--lun",
                      "description": "Set the lun value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove image-reference in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"imageReference\" : {\r\n             \"id\":\"\",\r\n             \"lun\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot config image-reference delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    },
                    {
                      "flags": "--lun",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--lun",
                      "description": "Remove the lun value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "encryption-settings": {
              "name": "encryption-settings",
              "description": "Commands to configure encryption-settings of managed-snapshot in config file.",
              "fullName": "managed-snapshot config encryption-settings",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set encryption-settings in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"encryptionSettings\" : {\r\n             \"enabled\":null,\r\n             \"diskEncryptionKey\":{\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               },\r\n               \"secretUrl\":\"\"\r\n             },\r\n             \"keyEncryptionKey\":{\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               },\r\n               \"keyUrl\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot config encryption-settings set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--enabled <enabled>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--enabled",
                      "description": "Set the enabled value."
                    },
                    {
                      "flags": "--disk-encryption-key <diskEncryptionKey>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-encryption-key",
                      "description": "Set the disk-encryption-key value."
                    },
                    {
                      "flags": "--key-encryption-key <keyEncryptionKey>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-encryption-key",
                      "description": "Set the key-encryption-key value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove encryption-settings in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"encryptionSettings\" : {\r\n             \"enabled\":null,\r\n             \"diskEncryptionKey\":{\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               },\r\n               \"secretUrl\":\"\"\r\n             },\r\n             \"keyEncryptionKey\":{\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               },\r\n               \"keyUrl\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot config encryption-settings delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--enabled",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--enabled",
                      "description": "Remove the enabled value."
                    },
                    {
                      "flags": "--disk-encryption-key",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-encryption-key",
                      "description": "Remove the disk-encryption-key value."
                    },
                    {
                      "flags": "--key-encryption-key",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-encryption-key",
                      "description": "Remove the key-encryption-key value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "disk-encryption-key": {
              "name": "disk-encryption-key",
              "description": "Commands to configure disk-encryption-key of managed-snapshot in config file.",
              "fullName": "managed-snapshot config disk-encryption-key",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set disk-encryption-key in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"diskEncryptionKey\" : {\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"secretUrl\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot config disk-encryption-key set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--source-vault <sourceVault>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Set the source-vault value."
                    },
                    {
                      "flags": "--secret-url <secretUrl>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--secret-url",
                      "description": "Set the secret-url value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove disk-encryption-key in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"diskEncryptionKey\" : {\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"secretUrl\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot config disk-encryption-key delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--source-vault",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Remove the source-vault value."
                    },
                    {
                      "flags": "--secret-url",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--secret-url",
                      "description": "Remove the secret-url value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "source-vault": {
              "name": "source-vault",
              "description": "Commands to configure source-vault of managed-snapshot in config file.",
              "fullName": "managed-snapshot config source-vault",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set source-vault in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot config source-vault set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove source-vault in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot config source-vault delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "key-encryption-key": {
              "name": "key-encryption-key",
              "description": "Commands to configure key-encryption-key of managed-snapshot in config file.",
              "fullName": "managed-snapshot config key-encryption-key",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set key-encryption-key in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"keyEncryptionKey\" : {\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"keyUrl\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot config key-encryption-key set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--source-vault <sourceVault>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Set the source-vault value."
                    },
                    {
                      "flags": "--key-url <keyUrl>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-url",
                      "description": "Set the key-url value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove key-encryption-key in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"keyEncryptionKey\" : {\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"keyUrl\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot config key-encryption-key delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--source-vault",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Remove the source-vault value."
                    },
                    {
                      "flags": "--key-url",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-url",
                      "description": "Remove the key-url value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "key-encryption-key-source-vault": {
              "name": "key-encryption-key-source-vault",
              "description": "Commands to configure key-encryption-key-source-vault of managed-snapshot in config file.",
              "fullName": "managed-snapshot config key-encryption-key-source-vault",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set key-encryption-key-source-vault in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot config key-encryption-key-source-vault set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove key-encryption-key-source-vault in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot config key-encryption-key-source-vault delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "grant-access-parameters": {
          "name": "grant-access-parameters",
          "description": "Commands to manage configuration of snapshots in the parameter file.",
          "fullName": "managed-snapshot grant-access-parameters",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Generate snapshotsGrantAccess parameter string or files.",
              "fullName": "managed-snapshot grant-access-parameters create",
              "usage": "[options]",
              "filePath": "commands/arm/compute/snapshots.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                }
              ]
            },
            {
              "name": "patch",
              "description": "Command to patch snapshotsGrantAccess parameter JSON file.",
              "fullName": "managed-snapshot grant-access-parameters patch",
              "usage": "[options]",
              "filePath": "commands/arm/compute/snapshots.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                },
                {
                  "flags": "--operation <operation>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--operation",
                  "description": "The JSON patch operation: add, remove, or replace."
                },
                {
                  "flags": "--path <path>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--path",
                  "description": "The JSON data path, e.g.: \"foo/1\"."
                },
                {
                  "flags": "--value <value>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--value",
                  "description": "The JSON value."
                },
                {
                  "flags": "--parse",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--parse",
                  "description": "Parse the JSON value to object."
                }
              ]
            }
          ],
          "categories": {
            "grant-access-data": {
              "name": "grant-access-data",
              "description": "Commands to configure grant-access-data of managed-snapshot in grant-access-parameters file.",
              "fullName": "managed-snapshot grant-access-parameters grant-access-data",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set grant-access-data in grant-access-parameters string or files, e.g. \r\n{\r\n  \"access\":\"\",\r\n  \"durationInSeconds\":\"\"\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot grant-access-parameters grant-access-data set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--access <access>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--access",
                      "description": "Set the access value."
                    },
                    {
                      "flags": "--duration-in-seconds <durationInSeconds>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "long": "--duration-in-seconds",
                      "description": "Set the duration-in-seconds value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove grant-access-data in grant-access-parameters string or files, e.g. \r\n{\r\n  \"access\":\"\",\r\n  \"durationInSeconds\":\"\"\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot grant-access-parameters grant-access-data delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--access",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--access",
                      "description": "Remove the access value."
                    },
                    {
                      "flags": "--duration-in-seconds",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--duration-in-seconds",
                      "description": "Remove the duration-in-seconds value."
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "update-parameters": {
          "name": "update-parameters",
          "description": "Commands to manage configuration of snapshots in the parameter file.",
          "fullName": "managed-snapshot update-parameters",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Generate snapshotsUpdate parameter string or files.",
              "fullName": "managed-snapshot update-parameters create",
              "usage": "[options]",
              "filePath": "commands/arm/compute/snapshots.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                }
              ]
            },
            {
              "name": "patch",
              "description": "Command to patch snapshotsUpdate parameter JSON file.",
              "fullName": "managed-snapshot update-parameters patch",
              "usage": "[options]",
              "filePath": "commands/arm/compute/snapshots.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                },
                {
                  "flags": "--operation <operation>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--operation",
                  "description": "The JSON patch operation: add, remove, or replace."
                },
                {
                  "flags": "--path <path>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--path",
                  "description": "The JSON data path, e.g.: \"foo/1\"."
                },
                {
                  "flags": "--value <value>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--value",
                  "description": "The JSON value."
                },
                {
                  "flags": "--parse",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--parse",
                  "description": "Parse the JSON value to object."
                }
              ]
            }
          ],
          "categories": {
            "snapshot-update": {
              "name": "snapshot-update",
              "description": "Commands to configure snapshot-update of managed-snapshot in update-parameters file.",
              "fullName": "managed-snapshot update-parameters snapshot-update",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set snapshot-update in update-parameters string or files, e.g. \r\n{\r\n  \"osType\":null,\r\n  \"diskSizeGB\":null,\r\n  \"encryptionSettings\":{\r\n    \"enabled\":null,\r\n    \"diskEncryptionKey\":{\r\n      \"sourceVault\":{\r\n        \"id\":\"\"\r\n      },\r\n      \"secretUrl\":\"\"\r\n    },\r\n    \"keyEncryptionKey\":{\r\n      \"sourceVault\":{\r\n        \"id\":\"\"\r\n      },\r\n      \"keyUrl\":\"\"\r\n    }\r\n  },\r\n  \"tags\":{\r\n  },\r\n  \"sku\":{\r\n    \"name\":null,\r\n    \"tier\":\"\"\r\n  }\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot update-parameters snapshot-update set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--os-type <osType>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-type",
                      "description": "Set the os-type value."
                    },
                    {
                      "flags": "--disk-size-g-b <diskSizeGB>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-size-g-b",
                      "description": "Set the disk-size-g-b value."
                    },
                    {
                      "flags": "--encryption-settings <encryptionSettings>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "long": "--encryption-settings",
                      "description": "Set the encryption-settings value."
                    },
                    {
                      "flags": "--tags <tags>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--tags",
                      "description": "Set the tags value."
                    },
                    {
                      "flags": "--sku <sku>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--sku",
                      "description": "Set the sku value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove snapshot-update in update-parameters string or files, e.g. \r\n{\r\n  \"osType\":null,\r\n  \"diskSizeGB\":null,\r\n  \"encryptionSettings\":{\r\n    \"enabled\":null,\r\n    \"diskEncryptionKey\":{\r\n      \"sourceVault\":{\r\n        \"id\":\"\"\r\n      },\r\n      \"secretUrl\":\"\"\r\n    },\r\n    \"keyEncryptionKey\":{\r\n      \"sourceVault\":{\r\n        \"id\":\"\"\r\n      },\r\n      \"keyUrl\":\"\"\r\n    }\r\n  },\r\n  \"tags\":{\r\n  },\r\n  \"sku\":{\r\n    \"name\":null,\r\n    \"tier\":\"\"\r\n  }\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot update-parameters snapshot-update delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--os-type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-type",
                      "description": "Remove the os-type value."
                    },
                    {
                      "flags": "--disk-size-g-b",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-size-g-b",
                      "description": "Remove the disk-size-g-b value."
                    },
                    {
                      "flags": "--encryption-settings",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--encryption-settings",
                      "description": "Remove the encryption-settings value."
                    },
                    {
                      "flags": "--tags",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--tags",
                      "description": "Remove the tags value."
                    },
                    {
                      "flags": "--sku",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--sku",
                      "description": "Remove the sku value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "encryption-settings": {
              "name": "encryption-settings",
              "description": "Commands to configure encryption-settings of managed-snapshot in update-parameters file.",
              "fullName": "managed-snapshot update-parameters encryption-settings",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set encryption-settings in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"encryptionSettings\" : {\r\n             \"enabled\":null,\r\n             \"diskEncryptionKey\":{\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               },\r\n               \"secretUrl\":\"\"\r\n             },\r\n             \"keyEncryptionKey\":{\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               },\r\n               \"keyUrl\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot update-parameters encryption-settings set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--enabled <enabled>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--enabled",
                      "description": "Set the enabled value."
                    },
                    {
                      "flags": "--disk-encryption-key <diskEncryptionKey>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-encryption-key",
                      "description": "Set the disk-encryption-key value."
                    },
                    {
                      "flags": "--key-encryption-key <keyEncryptionKey>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-encryption-key",
                      "description": "Set the key-encryption-key value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove encryption-settings in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"encryptionSettings\" : {\r\n             \"enabled\":null,\r\n             \"diskEncryptionKey\":{\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               },\r\n               \"secretUrl\":\"\"\r\n             },\r\n             \"keyEncryptionKey\":{\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               },\r\n               \"keyUrl\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot update-parameters encryption-settings delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--enabled",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--enabled",
                      "description": "Remove the enabled value."
                    },
                    {
                      "flags": "--disk-encryption-key",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-encryption-key",
                      "description": "Remove the disk-encryption-key value."
                    },
                    {
                      "flags": "--key-encryption-key",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-encryption-key",
                      "description": "Remove the key-encryption-key value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "disk-encryption-key": {
              "name": "disk-encryption-key",
              "description": "Commands to configure disk-encryption-key of managed-snapshot in update-parameters file.",
              "fullName": "managed-snapshot update-parameters disk-encryption-key",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set disk-encryption-key in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"diskEncryptionKey\" : {\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"secretUrl\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot update-parameters disk-encryption-key set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--source-vault <sourceVault>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Set the source-vault value."
                    },
                    {
                      "flags": "--secret-url <secretUrl>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--secret-url",
                      "description": "Set the secret-url value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove disk-encryption-key in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"diskEncryptionKey\" : {\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"secretUrl\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot update-parameters disk-encryption-key delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--source-vault",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Remove the source-vault value."
                    },
                    {
                      "flags": "--secret-url",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--secret-url",
                      "description": "Remove the secret-url value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "source-vault": {
              "name": "source-vault",
              "description": "Commands to configure source-vault of managed-snapshot in update-parameters file.",
              "fullName": "managed-snapshot update-parameters source-vault",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set source-vault in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot update-parameters source-vault set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove source-vault in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot update-parameters source-vault delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "key-encryption-key": {
              "name": "key-encryption-key",
              "description": "Commands to configure key-encryption-key of managed-snapshot in update-parameters file.",
              "fullName": "managed-snapshot update-parameters key-encryption-key",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set key-encryption-key in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"keyEncryptionKey\" : {\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"keyUrl\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot update-parameters key-encryption-key set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--source-vault <sourceVault>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Set the source-vault value."
                    },
                    {
                      "flags": "--key-url <keyUrl>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-url",
                      "description": "Set the key-url value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove key-encryption-key in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"keyEncryptionKey\" : {\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"keyUrl\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot update-parameters key-encryption-key delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--source-vault",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Remove the source-vault value."
                    },
                    {
                      "flags": "--key-url",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-url",
                      "description": "Remove the key-url value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "key-encryption-key-source-vault": {
              "name": "key-encryption-key-source-vault",
              "description": "Commands to configure key-encryption-key-source-vault of managed-snapshot in update-parameters file.",
              "fullName": "managed-snapshot update-parameters key-encryption-key-source-vault",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set key-encryption-key-source-vault in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot update-parameters key-encryption-key-source-vault set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove key-encryption-key-source-vault in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot update-parameters key-encryption-key-source-vault delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "sku": {
              "name": "sku",
              "description": "Commands to configure sku of managed-snapshot in update-parameters file.",
              "fullName": "managed-snapshot update-parameters sku",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set sku in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"sku\" : {\r\n             \"name\":null,\r\n             \"tier\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot update-parameters sku set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--tier <tier>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--tier",
                      "description": "Set the tier value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove sku in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"sku\" : {\r\n             \"name\":null,\r\n             \"tier\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "managed-snapshot update-parameters sku delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/snapshots.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--tier",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--tier",
                      "description": "Remove the tier value."
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        }
      }
    },
    "run-command": {
      "name": "run-command",
      "description": "Commands to manage your virtual machine run commands.  ",
      "fullName": "run-command",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "show",
          "description": "Gets specific run command for a subscription in a location.",
          "fullName": "run-command show",
          "usage": "[options] <location> <command-id>",
          "filePath": "commands/arm/compute/virtualMachineRunCommands.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "--location <location>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "long": "--location",
              "description": "location"
            },
            {
              "flags": "--command-id <command-id>",
              "required": -14,
              "optional": 0,
              "bool": true,
              "long": "--command-id",
              "description": "command-id"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "list",
          "description": "Lists all available run commands for a subscription in a location.",
          "fullName": "run-command list",
          "usage": "[options] <location>",
          "filePath": "commands/arm/compute/virtualMachineRunCommands.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "--location <location>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "long": "--location",
              "description": "location"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        }
      ],
      "categories": {}
    },
    "vmss-ext": {
      "name": "vmss-ext",
      "description": "Commands to manage your virtual machine scale set extensions.  ",
      "fullName": "vmss-ext",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "create",
          "description": "The operation to create or update an extension.",
          "fullName": "vmss-ext create",
          "usage": "[options] <resource-group> <name> <vm-extension-name> <extension-parameters>",
          "filePath": "commands/arm/compute/virtualMachineScaleSetExtensions.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "--vm-extension-name <vm-extension-name>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "long": "--vm-extension-name",
              "description": "vm-extension-name"
            },
            {
              "flags": "--extension-parameters <extension-parameters>",
              "required": -24,
              "optional": 0,
              "bool": true,
              "long": "--extension-parameters",
              "description": "extension-parameters"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "delete",
          "description": "The operation to delete the extension.",
          "fullName": "vmss-ext delete",
          "usage": "[options] <resource-group> <name> <vm-extension-name>",
          "filePath": "commands/arm/compute/virtualMachineScaleSetExtensions.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "--vm-extension-name <vm-extension-name>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "long": "--vm-extension-name",
              "description": "vm-extension-name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "show",
          "description": "The operation to get the extension.",
          "fullName": "vmss-ext show",
          "usage": "[options] <resource-group> <name> <vm-extension-name> <expand>",
          "filePath": "commands/arm/compute/virtualMachineScaleSetExtensions.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "--vm-extension-name <vm-extension-name>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "long": "--vm-extension-name",
              "description": "vm-extension-name"
            },
            {
              "flags": "--expand <expand>",
              "required": -10,
              "optional": 0,
              "bool": true,
              "long": "--expand",
              "description": "expand"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "list",
          "description": "Gets a list of all extensions in a VM scale set.",
          "fullName": "vmss-ext list",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/compute/virtualMachineScaleSetExtensions.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        }
      ],
      "categories": {
        "config": {
          "name": "config",
          "description": "Commands to manage configuration of virtual-machine-scale-set-extensions in the parameter file.",
          "fullName": "vmss-ext config",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Generate virtualMachineScaleSetExtensionsCreateOrUpdate parameter string or files.",
              "fullName": "vmss-ext config create",
              "usage": "[options]",
              "filePath": "commands/arm/compute/virtualMachineScaleSetExtensions.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                }
              ]
            },
            {
              "name": "patch",
              "description": "Command to patch virtualMachineScaleSetExtensionsCreateOrUpdate parameter JSON file.",
              "fullName": "vmss-ext config patch",
              "usage": "[options]",
              "filePath": "commands/arm/compute/virtualMachineScaleSetExtensions.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                },
                {
                  "flags": "--operation <operation>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--operation",
                  "description": "The JSON patch operation: add, remove, or replace."
                },
                {
                  "flags": "--path <path>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--path",
                  "description": "The JSON data path, e.g.: \"foo/1\"."
                },
                {
                  "flags": "--value <value>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--value",
                  "description": "The JSON value."
                },
                {
                  "flags": "--parse",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--parse",
                  "description": "Parse the JSON value to object."
                }
              ]
            }
          ],
          "categories": {
            "virtual-machine-scale-set-extension": {
              "name": "virtual-machine-scale-set-extension",
              "description": "Commands to configure virtual-machine-scale-set-extension of vmss-ext in config file.",
              "fullName": "vmss-ext config virtual-machine-scale-set-extension",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set virtual-machine-scale-set-extension in config string or files, e.g. \r\n{\r\n  \"name\":\"\",\r\n  \"forceUpdateTag\":\"\",\r\n  \"publisher\":\"\",\r\n  \"type\":\"\",\r\n  \"typeHandlerVersion\":\"\",\r\n  \"autoUpgradeMinorVersion\":null,\r\n  \"settings\":{\r\n  },\r\n  \"protectedSettings\":{\r\n  },\r\n  \"provisioningState\":\"\",\r\n  \"id\":null\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss-ext config virtual-machine-scale-set-extension set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSetExtensions.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--force-update-tag <forceUpdateTag>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--force-update-tag",
                      "description": "Set the force-update-tag value."
                    },
                    {
                      "flags": "--publisher <publisher>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--publisher",
                      "description": "Set the publisher value."
                    },
                    {
                      "flags": "--type <type>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Set the type value."
                    },
                    {
                      "flags": "--type-handler-version <typeHandlerVersion>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "long": "--type-handler-version",
                      "description": "Set the type-handler-version value."
                    },
                    {
                      "flags": "--auto-upgrade-minor-version <autoUpgradeMinorVersion>",
                      "required": -30,
                      "optional": 0,
                      "bool": true,
                      "long": "--auto-upgrade-minor-version",
                      "description": "Set the auto-upgrade-minor-version value."
                    },
                    {
                      "flags": "--settings <settings>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--settings",
                      "description": "Set the settings value."
                    },
                    {
                      "flags": "--protected-settings <protectedSettings>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--protected-settings",
                      "description": "Set the protected-settings value."
                    },
                    {
                      "flags": "--provisioning-state <provisioningState>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--provisioning-state",
                      "description": "Set the provisioning-state value."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove virtual-machine-scale-set-extension in config string or files, e.g. \r\n{\r\n  \"name\":\"\",\r\n  \"forceUpdateTag\":\"\",\r\n  \"publisher\":\"\",\r\n  \"type\":\"\",\r\n  \"typeHandlerVersion\":\"\",\r\n  \"autoUpgradeMinorVersion\":null,\r\n  \"settings\":{\r\n  },\r\n  \"protectedSettings\":{\r\n  },\r\n  \"provisioningState\":\"\",\r\n  \"id\":null\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss-ext config virtual-machine-scale-set-extension delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSetExtensions.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--force-update-tag",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--force-update-tag",
                      "description": "Remove the force-update-tag value."
                    },
                    {
                      "flags": "--publisher",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--publisher",
                      "description": "Remove the publisher value."
                    },
                    {
                      "flags": "--type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Remove the type value."
                    },
                    {
                      "flags": "--type-handler-version",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type-handler-version",
                      "description": "Remove the type-handler-version value."
                    },
                    {
                      "flags": "--auto-upgrade-minor-version",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--auto-upgrade-minor-version",
                      "description": "Remove the auto-upgrade-minor-version value."
                    },
                    {
                      "flags": "--settings",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--settings",
                      "description": "Remove the settings value."
                    },
                    {
                      "flags": "--protected-settings",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--protected-settings",
                      "description": "Remove the protected-settings value."
                    },
                    {
                      "flags": "--provisioning-state",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--provisioning-state",
                      "description": "Remove the provisioning-state value."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        }
      }
    },
    "vmss": {
      "name": "vmss",
      "description": "Commands to manage your virtual machine scale sets.  ",
      "fullName": "vmss",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "cancel-rolling-upgrade",
          "description": "Cancels the current virtual machine scale set rolling upgrade.",
          "fullName": "vmss cancel-rolling-upgrade",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/compute/virtualMachineScaleSetRollingUpgrades.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "get-latest-rolling-upgrade",
          "description": "Gets the status of the latest virtual machine scale set rolling upgrade.",
          "fullName": "vmss get-latest-rolling-upgrade",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/compute/virtualMachineScaleSetRollingUpgrades.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "start-os-rolling-upgrade",
          "description": "Starts a rolling upgrade to move all virtual machine scale set instances to the latest available Platform Image OS version. Instances which are already running the latest available OS version are not affected.",
          "fullName": "vmss start-os-rolling-upgrade",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/compute/virtualMachineScaleSetRollingUpgrades.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "create",
          "description": "Create or update a VM scale set.",
          "fullName": "vmss create",
          "usage": "[options] <resource-group> <name> <parameters>",
          "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-p, --parameters <parameters>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--parameters",
              "description": "A string of parameters in JSON format"
            },
            {
              "flags": "--parameter-file <parameter-file>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "long": "--parameter-file",
              "description": "The text file that contains input parameter object in JSON format"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "deallocate",
          "description": "Deallocates specific virtual machines in a VM scale set. Shuts down the virtual machines and releases the compute resources. You are not billed for the compute resources that this virtual machine scale set deallocates.",
          "fullName": "vmss deallocate",
          "usage": "[options] <resource-group> <name> <instance-ids>",
          "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "--instance-ids <instance-ids>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--instance-ids",
              "description": "instance-ids"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "delete",
          "description": "Deletes a VM scale set.",
          "fullName": "vmss delete",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "delete-instances",
          "description": "Deletes virtual machines in a VM scale set.",
          "fullName": "vmss delete-instances",
          "usage": "[options] <resource-group> <name> <instance-ids>",
          "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "--instance-ids <instance-ids>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--instance-ids",
              "description": "instance-ids"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "show",
          "description": "Display information about a virtual machine scale set.",
          "fullName": "vmss show",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "get-instance-view",
          "description": "Gets the status of a VM scale set instance.",
          "fullName": "vmss get-instance-view",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "list",
          "description": "Gets a list of all VM scale sets under a resource group.",
          "fullName": "vmss list",
          "usage": "[options] <resource-group>",
          "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "list-skus",
          "description": "Gets a list of SKUs available for your VM scale set, including the minimum and maximum VM instances allowed for each SKU.",
          "fullName": "vmss list-skus",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "power-off",
          "description": "Power off (stop) one or more virtual machines in a VM scale set. Note that resources are still attached and you are getting charged for the resources. Instead, use deallocate to release resources and avoid charges.",
          "fullName": "vmss power-off",
          "usage": "[options] <resource-group> <name> <instance-ids>",
          "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "--instance-ids <instance-ids>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--instance-ids",
              "description": "instance-ids"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "reimage",
          "description": "Reimages (upgrade the operating system) one or more virtual machines in a VM scale set.",
          "fullName": "vmss reimage",
          "usage": "[options] <resource-group> <name> <instance-ids>",
          "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "--instance-ids <instance-ids>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--instance-ids",
              "description": "instance-ids"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "reimage-all",
          "description": "Reimages all the disks ( including data disks ) in the virtual machines in a VM scale set. This operation is only supported for managed disks.",
          "fullName": "vmss reimage-all",
          "usage": "[options] <resource-group> <name> <instance-ids>",
          "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "--instance-ids <instance-ids>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--instance-ids",
              "description": "instance-ids"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "restart",
          "description": "Restarts one or more virtual machines in a VM scale set.",
          "fullName": "vmss restart",
          "usage": "[options] <resource-group> <name> <instance-ids>",
          "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "--instance-ids <instance-ids>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--instance-ids",
              "description": "instance-ids"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "start",
          "description": "Starts one or more virtual machines in a VM scale set.",
          "fullName": "vmss start",
          "usage": "[options] <resource-group> <name> <instance-ids>",
          "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "--instance-ids <instance-ids>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--instance-ids",
              "description": "instance-ids"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "update",
          "description": "Update a VM scale set.",
          "fullName": "vmss update",
          "usage": "[options] <resource-group> <name> <parameters>",
          "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-p, --parameters <parameters>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--parameters",
              "description": "A string of parameters in JSON format"
            },
            {
              "flags": "--parameter-file <parameter-file>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "long": "--parameter-file",
              "description": "The text file that contains input parameter object in JSON format"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "update-instances",
          "description": "Upgrades one or more virtual machines to the latest SKU set in the VM scale set model.",
          "fullName": "vmss update-instances",
          "usage": "[options] <resource-group> <name> <instance-ids>",
          "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "--instance-ids <instance-ids>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--instance-ids",
              "description": "instance-ids"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "quick-create",
          "description": "Commands to create a virtual machine scale set with default resources in a group.\n         For 'image-urn' refer the following command: $ azure vm image list (Example: $ azure vm image list westus canonical)",
          "fullName": "vmss quick-create",
          "usage": "[options] [resource-group-name] [name] [location] [image-urn] [capacity] [admin-username] [admin-password]",
          "filePath": "commands/arm/vmss/vmss.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group-name <resource-group-name>",
              "required": -27,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group-name",
              "description": "the resource group name"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the virtual machine name prefix"
            },
            {
              "flags": "-l, --location <location>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-l",
              "long": "--location",
              "description": "the location"
            },
            {
              "flags": "-Q, --image-urn <image-urn>",
              "required": -17,
              "optional": 0,
              "bool": true,
              "short": "-Q",
              "long": "--image-urn",
              "description": "the image reference, e.g. \"publisher:offer:skus:version\"\n                                                 URN Aliases:\n                                                 Win2012R2Datacenter = MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter:latest\n                                                 Win2012Datacenter = MicrosoftWindowsServer:WindowsServer:2012-Datacenter:latest\n                                                 Win2008R2SP1 = MicrosoftWindowsServer:WindowsServer:2008-R2-SP1:latest\n                                                 CentOS = OpenLogic:CentOS:7.2:latest\n                                                 CoreOS = CoreOS:CoreOS:Stable:latest\n                                                 Debian = credativ:Debian:8:latest\n                                                 openSUSE = SUSE:openSUSE:13.2:latest\n                                                 RHEL = RedHat:RHEL:7.2:latest\n                                                 SLES = SUSE:SLES:12-SP1:latest\n                                                 UbuntuLTS = Canonical:UbuntuServer:14.04.4-LTS:latest"
            },
            {
              "flags": "-u, --admin-username <admin-username>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-u",
              "long": "--admin-username",
              "description": "the user name"
            },
            {
              "flags": "-p, --admin-password <admin-password>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--admin-password",
              "description": "the password"
            },
            {
              "flags": "-z, --vm-size <vm-size>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-z",
              "long": "--vm-size",
              "description": "Optional, the virtual machine size, by default [Standard_DS1]"
            },
            {
              "flags": "-C, --capacity <capacity>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-C",
              "long": "--capacity",
              "description": "the virtual machine scale set capacity, i.e. number of instances (5 by default)"
            },
            {
              "flags": "-M, --ssh-public-key-file <ssh-public-key-file>",
              "required": -27,
              "optional": 0,
              "bool": true,
              "short": "-M",
              "long": "--ssh-public-key-file",
              "description": "the path to public key file for SSH authentication,\n                                                 & this parameter is valid only when os-type is Linux."
            },
            {
              "flags": "-a, --storage-type <storage-type>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-a",
              "long": "--storage-type",
              "description": "Optional, the storage type, by default [Premium_LRS]"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "scale",
          "description": "The operation to scale virtual machine scale set",
          "fullName": "vmss scale",
          "usage": "[options] <resource-group> <name> <new-capacity>",
          "filePath": "commands/arm/vmss/vmss.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-C, --new-capacity <new-capacity>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-C",
              "long": "--new-capacity",
              "description": "the new capacity value"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        }
      ],
      "categories": {
        "config": {
          "name": "config",
          "description": "Commands to manage configuration of virtual-machine-scale-sets in the parameter file.",
          "fullName": "vmss config",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Generate virtualMachineScaleSetsCreateOrUpdate parameter string or files.",
              "fullName": "vmss config create",
              "usage": "[options]",
              "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                }
              ]
            },
            {
              "name": "patch",
              "description": "Command to patch virtualMachineScaleSetsCreateOrUpdate parameter JSON file.",
              "fullName": "vmss config patch",
              "usage": "[options]",
              "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                },
                {
                  "flags": "--operation <operation>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--operation",
                  "description": "The JSON patch operation: add, remove, or replace."
                },
                {
                  "flags": "--path <path>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--path",
                  "description": "The JSON data path, e.g.: \"foo/1\"."
                },
                {
                  "flags": "--value <value>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--value",
                  "description": "The JSON value."
                },
                {
                  "flags": "--parse",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--parse",
                  "description": "Parse the JSON value to object."
                }
              ]
            }
          ],
          "categories": {
            "virtual-machine-scale-set": {
              "name": "virtual-machine-scale-set",
              "description": "Commands to configure virtual-machine-scale-set of vmss in config file.",
              "fullName": "vmss config virtual-machine-scale-set",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set virtual-machine-scale-set in config string or files, e.g. \r\n{\r\n  \"sku\":{\r\n    \"name\":\"\",\r\n    \"tier\":\"\",\r\n    \"capacity\":null\r\n  },\r\n  \"plan\":{\r\n    \"name\":\"\",\r\n    \"publisher\":\"\",\r\n    \"product\":\"\",\r\n    \"promotionCode\":\"\"\r\n  },\r\n  \"upgradePolicy\":{\r\n    \"mode\":null,\r\n    \"rollingUpgradePolicy\":{\r\n      \"maxBatchInstancePercent\":null,\r\n      \"maxUnhealthyInstancePercent\":null,\r\n      \"maxUnhealthyUpgradedInstancePercent\":null,\r\n      \"pauseTimeBetweenBatches\":\"\"\r\n    },\r\n    \"automaticOSUpgrade\":null\r\n  },\r\n  \"virtualMachineProfile\":{\r\n    \"osProfile\":{\r\n      \"computerNamePrefix\":\"\",\r\n      \"adminUsername\":\"\",\r\n      \"adminPassword\":\"\",\r\n      \"customData\":\"\",\r\n      \"windowsConfiguration\":{\r\n        \"provisionVMAgent\":null,\r\n        \"enableAutomaticUpdates\":null,\r\n        \"timeZone\":\"\",\r\n        \"additionalUnattendContent\":[\r\n          {\r\n            \"passName\":null,\r\n            \"componentName\":null,\r\n            \"settingName\":null,\r\n            \"content\":\"\"\r\n          }\r\n        ],\r\n        \"winRM\":{\r\n          \"listeners\":[\r\n            {\r\n              \"protocol\":null,\r\n              \"certificateUrl\":\"\"\r\n            }\r\n          ]\r\n        }\r\n      },\r\n      \"linuxConfiguration\":{\r\n        \"disablePasswordAuthentication\":null,\r\n        \"ssh\":{\r\n          \"publicKeys\":[\r\n            {\r\n              \"path\":\"\",\r\n              \"keyData\":\"\"\r\n            }\r\n          ]\r\n        }\r\n      },\r\n      \"secrets\":[\r\n        {\r\n          \"sourceVault\":{\r\n            \"id\":\"\"\r\n          },\r\n          \"vaultCertificates\":[\r\n            {\r\n              \"certificateUrl\":\"\",\r\n              \"certificateStore\":\"\"\r\n            }\r\n          ]\r\n        }\r\n      ]\r\n    },\r\n    \"storageProfile\":{\r\n      \"imageReference\":{\r\n        \"publisher\":\"\",\r\n        \"offer\":\"\",\r\n        \"sku\":\"\",\r\n        \"version\":\"\",\r\n        \"id\":\"\"\r\n      },\r\n      \"osDisk\":{\r\n        \"name\":\"\",\r\n        \"caching\":null,\r\n        \"createOption\":\"\",\r\n        \"osType\":null,\r\n        \"image\":{\r\n          \"uri\":\"\"\r\n        },\r\n        \"vhdContainers\":[\r\n          \"\"\r\n        ],\r\n        \"managedDisk\":{\r\n          \"storageAccountType\":null\r\n        }\r\n      },\r\n      \"dataDisks\":[\r\n        {\r\n          \"name\":\"\",\r\n          \"lun\":\"\",\r\n          \"caching\":null,\r\n          \"createOption\":\"\",\r\n          \"diskSizeGB\":null,\r\n          \"managedDisk\":{\r\n            \"storageAccountType\":null\r\n          }\r\n        }\r\n      ]\r\n    },\r\n    \"networkProfile\":{\r\n      \"healthProbe\":{\r\n        \"id\":\"\"\r\n      },\r\n      \"networkInterfaceConfigurations\":[\r\n        {\r\n          \"name\":\"\",\r\n          \"primary\":null,\r\n          \"enableAcceleratedNetworking\":null,\r\n          \"networkSecurityGroup\":{\r\n            \"id\":\"\"\r\n          },\r\n          \"dnsSettings\":{\r\n            \"dnsServers\":[\r\n              \"\"\r\n            ]\r\n          },\r\n          \"ipConfigurations\":[\r\n            {\r\n              \"name\":\"\",\r\n              \"subnet\":{\r\n                \"id\":\"\"\r\n              },\r\n              \"primary\":null,\r\n              \"publicIPAddressConfiguration\":{\r\n                \"name\":\"\",\r\n                \"idleTimeoutInMinutes\":null,\r\n                \"dnsSettings\":{\r\n                  \"domainNameLabel\":\"\"\r\n                }\r\n              },\r\n              \"privateIPAddressVersion\":\"\",\r\n              \"applicationGatewayBackendAddressPools\":[\r\n                {\r\n                  \"id\":\"\"\r\n                }\r\n              ],\r\n              \"loadBalancerBackendAddressPools\":[\r\n                {\r\n                  \"id\":\"\"\r\n                }\r\n              ],\r\n              \"loadBalancerInboundNatPools\":[\r\n                {\r\n                  \"id\":\"\"\r\n                }\r\n              ],\r\n              \"id\":\"\"\r\n            }\r\n          ],\r\n          \"id\":\"\"\r\n        }\r\n      ]\r\n    },\r\n    \"diagnosticsProfile\":{\r\n      \"bootDiagnostics\":{\r\n        \"enabled\":null,\r\n        \"storageUri\":\"\"\r\n      }\r\n    },\r\n    \"extensionProfile\":{\r\n      \"extensions\":[\r\n        {\r\n          \"name\":\"\",\r\n          \"forceUpdateTag\":\"\",\r\n          \"publisher\":\"\",\r\n          \"type\":\"\",\r\n          \"typeHandlerVersion\":\"\",\r\n          \"autoUpgradeMinorVersion\":null,\r\n          \"settings\":{\r\n          },\r\n          \"protectedSettings\":{\r\n          },\r\n          \"provisioningState\":\"\",\r\n          \"id\":null\r\n        }\r\n      ]\r\n    },\r\n    \"licenseType\":\"\"\r\n  },\r\n  \"provisioningState\":\"\",\r\n  \"overprovision\":null,\r\n  \"uniqueId\":\"\",\r\n  \"singlePlacementGroup\":null,\r\n  \"identity\":{\r\n    \"principalId\":\"\",\r\n    \"tenantId\":\"\",\r\n    \"type\":null\r\n  },\r\n  \"zones\":[\r\n    \"\"\r\n  ],\r\n  \"id\":null,\r\n  \"name\":null,\r\n  \"type\":null,\r\n  \"location\":\"\",\r\n  \"tags\":{\r\n  }\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config virtual-machine-scale-set set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--sku <sku>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--sku",
                      "description": "Set the sku value."
                    },
                    {
                      "flags": "--plan <plan>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--plan",
                      "description": "Set the plan value."
                    },
                    {
                      "flags": "--upgrade-policy <upgradePolicy>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--upgrade-policy",
                      "description": "Set the upgrade-policy value."
                    },
                    {
                      "flags": "--virtual-machine-profile <virtualMachineProfile>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--virtual-machine-profile",
                      "description": "Set the virtual-machine-profile value."
                    },
                    {
                      "flags": "--provisioning-state <provisioningState>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--provisioning-state",
                      "description": "Set the provisioning-state value."
                    },
                    {
                      "flags": "--overprovision <overprovision>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--overprovision",
                      "description": "Set the overprovision value."
                    },
                    {
                      "flags": "--unique-id <uniqueId>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--unique-id",
                      "description": "Set the unique-id value."
                    },
                    {
                      "flags": "--single-placement-group <singlePlacementGroup>",
                      "required": -26,
                      "optional": 0,
                      "bool": true,
                      "long": "--single-placement-group",
                      "description": "Set the single-placement-group value."
                    },
                    {
                      "flags": "--identity <identity>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--identity",
                      "description": "Set the identity value."
                    },
                    {
                      "flags": "--zones <zones>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--zones",
                      "description": "Set the zones value."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--type <type>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Set the type value."
                    },
                    {
                      "flags": "--location <location>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--location",
                      "description": "Set the location value."
                    },
                    {
                      "flags": "--tags <tags>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--tags",
                      "description": "Set the tags value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove virtual-machine-scale-set in config string or files, e.g. \r\n{\r\n  \"sku\":{\r\n    \"name\":\"\",\r\n    \"tier\":\"\",\r\n    \"capacity\":null\r\n  },\r\n  \"plan\":{\r\n    \"name\":\"\",\r\n    \"publisher\":\"\",\r\n    \"product\":\"\",\r\n    \"promotionCode\":\"\"\r\n  },\r\n  \"upgradePolicy\":{\r\n    \"mode\":null,\r\n    \"rollingUpgradePolicy\":{\r\n      \"maxBatchInstancePercent\":null,\r\n      \"maxUnhealthyInstancePercent\":null,\r\n      \"maxUnhealthyUpgradedInstancePercent\":null,\r\n      \"pauseTimeBetweenBatches\":\"\"\r\n    },\r\n    \"automaticOSUpgrade\":null\r\n  },\r\n  \"virtualMachineProfile\":{\r\n    \"osProfile\":{\r\n      \"computerNamePrefix\":\"\",\r\n      \"adminUsername\":\"\",\r\n      \"adminPassword\":\"\",\r\n      \"customData\":\"\",\r\n      \"windowsConfiguration\":{\r\n        \"provisionVMAgent\":null,\r\n        \"enableAutomaticUpdates\":null,\r\n        \"timeZone\":\"\",\r\n        \"additionalUnattendContent\":[\r\n          {\r\n            \"passName\":null,\r\n            \"componentName\":null,\r\n            \"settingName\":null,\r\n            \"content\":\"\"\r\n          }\r\n        ],\r\n        \"winRM\":{\r\n          \"listeners\":[\r\n            {\r\n              \"protocol\":null,\r\n              \"certificateUrl\":\"\"\r\n            }\r\n          ]\r\n        }\r\n      },\r\n      \"linuxConfiguration\":{\r\n        \"disablePasswordAuthentication\":null,\r\n        \"ssh\":{\r\n          \"publicKeys\":[\r\n            {\r\n              \"path\":\"\",\r\n              \"keyData\":\"\"\r\n            }\r\n          ]\r\n        }\r\n      },\r\n      \"secrets\":[\r\n        {\r\n          \"sourceVault\":{\r\n            \"id\":\"\"\r\n          },\r\n          \"vaultCertificates\":[\r\n            {\r\n              \"certificateUrl\":\"\",\r\n              \"certificateStore\":\"\"\r\n            }\r\n          ]\r\n        }\r\n      ]\r\n    },\r\n    \"storageProfile\":{\r\n      \"imageReference\":{\r\n        \"publisher\":\"\",\r\n        \"offer\":\"\",\r\n        \"sku\":\"\",\r\n        \"version\":\"\",\r\n        \"id\":\"\"\r\n      },\r\n      \"osDisk\":{\r\n        \"name\":\"\",\r\n        \"caching\":null,\r\n        \"createOption\":\"\",\r\n        \"osType\":null,\r\n        \"image\":{\r\n          \"uri\":\"\"\r\n        },\r\n        \"vhdContainers\":[\r\n          \"\"\r\n        ],\r\n        \"managedDisk\":{\r\n          \"storageAccountType\":null\r\n        }\r\n      },\r\n      \"dataDisks\":[\r\n        {\r\n          \"name\":\"\",\r\n          \"lun\":\"\",\r\n          \"caching\":null,\r\n          \"createOption\":\"\",\r\n          \"diskSizeGB\":null,\r\n          \"managedDisk\":{\r\n            \"storageAccountType\":null\r\n          }\r\n        }\r\n      ]\r\n    },\r\n    \"networkProfile\":{\r\n      \"healthProbe\":{\r\n        \"id\":\"\"\r\n      },\r\n      \"networkInterfaceConfigurations\":[\r\n        {\r\n          \"name\":\"\",\r\n          \"primary\":null,\r\n          \"enableAcceleratedNetworking\":null,\r\n          \"networkSecurityGroup\":{\r\n            \"id\":\"\"\r\n          },\r\n          \"dnsSettings\":{\r\n            \"dnsServers\":[\r\n              \"\"\r\n            ]\r\n          },\r\n          \"ipConfigurations\":[\r\n            {\r\n              \"name\":\"\",\r\n              \"subnet\":{\r\n                \"id\":\"\"\r\n              },\r\n              \"primary\":null,\r\n              \"publicIPAddressConfiguration\":{\r\n                \"name\":\"\",\r\n                \"idleTimeoutInMinutes\":null,\r\n                \"dnsSettings\":{\r\n                  \"domainNameLabel\":\"\"\r\n                }\r\n              },\r\n              \"privateIPAddressVersion\":\"\",\r\n              \"applicationGatewayBackendAddressPools\":[\r\n                {\r\n                  \"id\":\"\"\r\n                }\r\n              ],\r\n              \"loadBalancerBackendAddressPools\":[\r\n                {\r\n                  \"id\":\"\"\r\n                }\r\n              ],\r\n              \"loadBalancerInboundNatPools\":[\r\n                {\r\n                  \"id\":\"\"\r\n                }\r\n              ],\r\n              \"id\":\"\"\r\n            }\r\n          ],\r\n          \"id\":\"\"\r\n        }\r\n      ]\r\n    },\r\n    \"diagnosticsProfile\":{\r\n      \"bootDiagnostics\":{\r\n        \"enabled\":null,\r\n        \"storageUri\":\"\"\r\n      }\r\n    },\r\n    \"extensionProfile\":{\r\n      \"extensions\":[\r\n        {\r\n          \"name\":\"\",\r\n          \"forceUpdateTag\":\"\",\r\n          \"publisher\":\"\",\r\n          \"type\":\"\",\r\n          \"typeHandlerVersion\":\"\",\r\n          \"autoUpgradeMinorVersion\":null,\r\n          \"settings\":{\r\n          },\r\n          \"protectedSettings\":{\r\n          },\r\n          \"provisioningState\":\"\",\r\n          \"id\":null\r\n        }\r\n      ]\r\n    },\r\n    \"licenseType\":\"\"\r\n  },\r\n  \"provisioningState\":\"\",\r\n  \"overprovision\":null,\r\n  \"uniqueId\":\"\",\r\n  \"singlePlacementGroup\":null,\r\n  \"identity\":{\r\n    \"principalId\":\"\",\r\n    \"tenantId\":\"\",\r\n    \"type\":null\r\n  },\r\n  \"zones\":[\r\n    \"\"\r\n  ],\r\n  \"id\":null,\r\n  \"name\":null,\r\n  \"type\":null,\r\n  \"location\":\"\",\r\n  \"tags\":{\r\n  }\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config virtual-machine-scale-set delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--sku",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--sku",
                      "description": "Remove the sku value."
                    },
                    {
                      "flags": "--plan",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--plan",
                      "description": "Remove the plan value."
                    },
                    {
                      "flags": "--upgrade-policy",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--upgrade-policy",
                      "description": "Remove the upgrade-policy value."
                    },
                    {
                      "flags": "--virtual-machine-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--virtual-machine-profile",
                      "description": "Remove the virtual-machine-profile value."
                    },
                    {
                      "flags": "--provisioning-state",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--provisioning-state",
                      "description": "Remove the provisioning-state value."
                    },
                    {
                      "flags": "--overprovision",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--overprovision",
                      "description": "Remove the overprovision value."
                    },
                    {
                      "flags": "--unique-id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--unique-id",
                      "description": "Remove the unique-id value."
                    },
                    {
                      "flags": "--single-placement-group",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--single-placement-group",
                      "description": "Remove the single-placement-group value."
                    },
                    {
                      "flags": "--identity",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--identity",
                      "description": "Remove the identity value."
                    },
                    {
                      "flags": "--zones",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--zones",
                      "description": "Remove the zones value."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Remove the type value."
                    },
                    {
                      "flags": "--location",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--location",
                      "description": "Remove the location value."
                    },
                    {
                      "flags": "--tags",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--tags",
                      "description": "Remove the tags value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "sku": {
              "name": "sku",
              "description": "Commands to configure sku of vmss in config file.",
              "fullName": "vmss config sku",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set sku in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sku\" : {\r\n             \"name\":\"\",\r\n             \"tier\":\"\",\r\n             \"capacity\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config sku set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--tier <tier>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--tier",
                      "description": "Set the tier value."
                    },
                    {
                      "flags": "--capacity <capacity>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--capacity",
                      "description": "Set the capacity value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove sku in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sku\" : {\r\n             \"name\":\"\",\r\n             \"tier\":\"\",\r\n             \"capacity\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config sku delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--tier",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--tier",
                      "description": "Remove the tier value."
                    },
                    {
                      "flags": "--capacity",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--capacity",
                      "description": "Remove the capacity value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "plan": {
              "name": "plan",
              "description": "Commands to configure plan of vmss in config file.",
              "fullName": "vmss config plan",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set plan in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"plan\" : {\r\n             \"name\":\"\",\r\n             \"publisher\":\"\",\r\n             \"product\":\"\",\r\n             \"promotionCode\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config plan set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--publisher <publisher>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--publisher",
                      "description": "Set the publisher value."
                    },
                    {
                      "flags": "--product <product>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--product",
                      "description": "Set the product value."
                    },
                    {
                      "flags": "--promotion-code <promotionCode>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--promotion-code",
                      "description": "Set the promotion-code value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove plan in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"plan\" : {\r\n             \"name\":\"\",\r\n             \"publisher\":\"\",\r\n             \"product\":\"\",\r\n             \"promotionCode\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config plan delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--publisher",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--publisher",
                      "description": "Remove the publisher value."
                    },
                    {
                      "flags": "--product",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--product",
                      "description": "Remove the product value."
                    },
                    {
                      "flags": "--promotion-code",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--promotion-code",
                      "description": "Remove the promotion-code value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "upgrade-policy": {
              "name": "upgrade-policy",
              "description": "Commands to configure upgrade-policy of vmss in config file.",
              "fullName": "vmss config upgrade-policy",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set upgrade-policy in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"upgradePolicy\" : {\r\n             \"mode\":null,\r\n             \"rollingUpgradePolicy\":{\r\n               \"maxBatchInstancePercent\":null,\r\n               \"maxUnhealthyInstancePercent\":null,\r\n               \"maxUnhealthyUpgradedInstancePercent\":null,\r\n               \"pauseTimeBetweenBatches\":\"\"\r\n             },\r\n             \"automaticOSUpgrade\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config upgrade-policy set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--mode <mode>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--mode",
                      "description": "Set the mode value."
                    },
                    {
                      "flags": "--rolling-upgrade-policy <rollingUpgradePolicy>",
                      "required": -26,
                      "optional": 0,
                      "bool": true,
                      "long": "--rolling-upgrade-policy",
                      "description": "Set the rolling-upgrade-policy value."
                    },
                    {
                      "flags": "--automatic-os-upgrade <automaticOSUpgrade>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "long": "--automatic-os-upgrade",
                      "description": "Set the automatic-os-upgrade value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove upgrade-policy in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"upgradePolicy\" : {\r\n             \"mode\":null,\r\n             \"rollingUpgradePolicy\":{\r\n               \"maxBatchInstancePercent\":null,\r\n               \"maxUnhealthyInstancePercent\":null,\r\n               \"maxUnhealthyUpgradedInstancePercent\":null,\r\n               \"pauseTimeBetweenBatches\":\"\"\r\n             },\r\n             \"automaticOSUpgrade\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config upgrade-policy delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--mode",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--mode",
                      "description": "Remove the mode value."
                    },
                    {
                      "flags": "--rolling-upgrade-policy",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--rolling-upgrade-policy",
                      "description": "Remove the rolling-upgrade-policy value."
                    },
                    {
                      "flags": "--automatic-os-upgrade",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--automatic-os-upgrade",
                      "description": "Remove the automatic-os-upgrade value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "rolling-upgrade-policy": {
              "name": "rolling-upgrade-policy",
              "description": "Commands to configure rolling-upgrade-policy of vmss in config file.",
              "fullName": "vmss config rolling-upgrade-policy",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set rolling-upgrade-policy in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"rollingUpgradePolicy\" : {\r\n             \"maxBatchInstancePercent\":null,\r\n             \"maxUnhealthyInstancePercent\":null,\r\n             \"maxUnhealthyUpgradedInstancePercent\":null,\r\n             \"pauseTimeBetweenBatches\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config rolling-upgrade-policy set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--max-batch-instance-percent <maxBatchInstancePercent>",
                      "required": -30,
                      "optional": 0,
                      "bool": true,
                      "long": "--max-batch-instance-percent",
                      "description": "Set the max-batch-instance-percent value."
                    },
                    {
                      "flags": "--max-unhealthy-instance-percent <maxUnhealthyInstancePercent>",
                      "required": -34,
                      "optional": 0,
                      "bool": true,
                      "long": "--max-unhealthy-instance-percent",
                      "description": "Set the max-unhealthy-instance-percent value."
                    },
                    {
                      "flags": "--max-unhealthy-upgraded-instance-percent <maxUnhealthyUpgradedInstancePercent>",
                      "required": -43,
                      "optional": 0,
                      "bool": true,
                      "long": "--max-unhealthy-upgraded-instance-percent",
                      "description": "Set the max-unhealthy-upgraded-instance-percent value."
                    },
                    {
                      "flags": "--pause-time-between-batches <pauseTimeBetweenBatches>",
                      "required": -30,
                      "optional": 0,
                      "bool": true,
                      "long": "--pause-time-between-batches",
                      "description": "Set the pause-time-between-batches value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove rolling-upgrade-policy in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"rollingUpgradePolicy\" : {\r\n             \"maxBatchInstancePercent\":null,\r\n             \"maxUnhealthyInstancePercent\":null,\r\n             \"maxUnhealthyUpgradedInstancePercent\":null,\r\n             \"pauseTimeBetweenBatches\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config rolling-upgrade-policy delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--max-batch-instance-percent",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--max-batch-instance-percent",
                      "description": "Remove the max-batch-instance-percent value."
                    },
                    {
                      "flags": "--max-unhealthy-instance-percent",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--max-unhealthy-instance-percent",
                      "description": "Remove the max-unhealthy-instance-percent value."
                    },
                    {
                      "flags": "--max-unhealthy-upgraded-instance-percent",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--max-unhealthy-upgraded-instance-percent",
                      "description": "Remove the max-unhealthy-upgraded-instance-percent value."
                    },
                    {
                      "flags": "--pause-time-between-batches",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--pause-time-between-batches",
                      "description": "Remove the pause-time-between-batches value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "virtual-machine-profile": {
              "name": "virtual-machine-profile",
              "description": "Commands to configure virtual-machine-profile of vmss in config file.",
              "fullName": "vmss config virtual-machine-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set virtual-machine-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"virtualMachineProfile\" : {\r\n             \"osProfile\":{\r\n               \"computerNamePrefix\":\"\",\r\n               \"adminUsername\":\"\",\r\n               \"adminPassword\":\"\",\r\n               \"customData\":\"\",\r\n               \"windowsConfiguration\":{\r\n                 \"provisionVMAgent\":null,\r\n                 \"enableAutomaticUpdates\":null,\r\n                 \"timeZone\":\"\",\r\n                 \"additionalUnattendContent\":[\r\n                   {\r\n                     \"passName\":null,\r\n                     \"componentName\":null,\r\n                     \"settingName\":null,\r\n                     \"content\":\"\"\r\n                   }\r\n                 ],\r\n                 \"winRM\":{\r\n                   \"listeners\":[\r\n                     {\r\n                       \"protocol\":null,\r\n                       \"certificateUrl\":\"\"\r\n                     }\r\n                   ]\r\n                 }\r\n               },\r\n               \"linuxConfiguration\":{\r\n                 \"disablePasswordAuthentication\":null,\r\n                 \"ssh\":{\r\n                   \"publicKeys\":[\r\n                     {\r\n                       \"path\":\"\",\r\n                       \"keyData\":\"\"\r\n                     }\r\n                   ]\r\n                 }\r\n               },\r\n               \"secrets\":[\r\n                 {\r\n                   \"sourceVault\":{\r\n                     \"id\":\"\"\r\n                   },\r\n                   \"vaultCertificates\":[\r\n                     {\r\n                       \"certificateUrl\":\"\",\r\n                       \"certificateStore\":\"\"\r\n                     }\r\n                   ]\r\n                 }\r\n               ]\r\n             },\r\n             \"storageProfile\":{\r\n               \"imageReference\":{\r\n                 \"publisher\":\"\",\r\n                 \"offer\":\"\",\r\n                 \"sku\":\"\",\r\n                 \"version\":\"\",\r\n                 \"id\":\"\"\r\n               },\r\n               \"osDisk\":{\r\n                 \"name\":\"\",\r\n                 \"caching\":null,\r\n                 \"createOption\":\"\",\r\n                 \"osType\":null,\r\n                 \"image\":{\r\n                   \"uri\":\"\"\r\n                 },\r\n                 \"vhdContainers\":[\r\n                   \"\"\r\n                 ],\r\n                 \"managedDisk\":{\r\n                   \"storageAccountType\":null\r\n                 }\r\n               },\r\n               \"dataDisks\":[\r\n                 {\r\n                   \"name\":\"\",\r\n                   \"lun\":\"\",\r\n                   \"caching\":null,\r\n                   \"createOption\":\"\",\r\n                   \"diskSizeGB\":null,\r\n                   \"managedDisk\":{\r\n                     \"storageAccountType\":null\r\n                   }\r\n                 }\r\n               ]\r\n             },\r\n             \"networkProfile\":{\r\n               \"healthProbe\":{\r\n                 \"id\":\"\"\r\n               },\r\n               \"networkInterfaceConfigurations\":[\r\n                 {\r\n                   \"name\":\"\",\r\n                   \"primary\":null,\r\n                   \"enableAcceleratedNetworking\":null,\r\n                   \"networkSecurityGroup\":{\r\n                     \"id\":\"\"\r\n                   },\r\n                   \"dnsSettings\":{\r\n                     \"dnsServers\":[\r\n                       \"\"\r\n                     ]\r\n                   },\r\n                   \"ipConfigurations\":[\r\n                     {\r\n                       \"name\":\"\",\r\n                       \"subnet\":{\r\n                         \"id\":\"\"\r\n                       },\r\n                       \"primary\":null,\r\n                       \"publicIPAddressConfiguration\":{\r\n                         \"name\":\"\",\r\n                         \"idleTimeoutInMinutes\":null,\r\n                         \"dnsSettings\":{\r\n                           \"domainNameLabel\":\"\"\r\n                         }\r\n                       },\r\n                       \"privateIPAddressVersion\":\"\",\r\n                       \"applicationGatewayBackendAddressPools\":[\r\n                         {\r\n                           \"id\":\"\"\r\n                         }\r\n                       ],\r\n                       \"loadBalancerBackendAddressPools\":[\r\n                         {\r\n                           \"id\":\"\"\r\n                         }\r\n                       ],\r\n                       \"loadBalancerInboundNatPools\":[\r\n                         {\r\n                           \"id\":\"\"\r\n                         }\r\n                       ],\r\n                       \"id\":\"\"\r\n                     }\r\n                   ],\r\n                   \"id\":\"\"\r\n                 }\r\n               ]\r\n             },\r\n             \"diagnosticsProfile\":{\r\n               \"bootDiagnostics\":{\r\n                 \"enabled\":null,\r\n                 \"storageUri\":\"\"\r\n               }\r\n             },\r\n             \"extensionProfile\":{\r\n               \"extensions\":[\r\n                 {\r\n                   \"name\":\"\",\r\n                   \"forceUpdateTag\":\"\",\r\n                   \"publisher\":\"\",\r\n                   \"type\":\"\",\r\n                   \"typeHandlerVersion\":\"\",\r\n                   \"autoUpgradeMinorVersion\":null,\r\n                   \"settings\":{\r\n                   },\r\n                   \"protectedSettings\":{\r\n                   },\r\n                   \"provisioningState\":\"\",\r\n                   \"id\":null\r\n                 }\r\n               ]\r\n             },\r\n             \"licenseType\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config virtual-machine-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--os-profile <osProfile>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-profile",
                      "description": "Set the os-profile value."
                    },
                    {
                      "flags": "--storage-profile <storageProfile>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-profile",
                      "description": "Set the storage-profile value."
                    },
                    {
                      "flags": "--network-profile <networkProfile>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-profile",
                      "description": "Set the network-profile value."
                    },
                    {
                      "flags": "--diagnostics-profile <diagnosticsProfile>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "long": "--diagnostics-profile",
                      "description": "Set the diagnostics-profile value."
                    },
                    {
                      "flags": "--extension-profile <extensionProfile>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "long": "--extension-profile",
                      "description": "Set the extension-profile value."
                    },
                    {
                      "flags": "--license-type <licenseType>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--license-type",
                      "description": "Set the license-type value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove virtual-machine-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"virtualMachineProfile\" : {\r\n             \"osProfile\":{\r\n               \"computerNamePrefix\":\"\",\r\n               \"adminUsername\":\"\",\r\n               \"adminPassword\":\"\",\r\n               \"customData\":\"\",\r\n               \"windowsConfiguration\":{\r\n                 \"provisionVMAgent\":null,\r\n                 \"enableAutomaticUpdates\":null,\r\n                 \"timeZone\":\"\",\r\n                 \"additionalUnattendContent\":[\r\n                   {\r\n                     \"passName\":null,\r\n                     \"componentName\":null,\r\n                     \"settingName\":null,\r\n                     \"content\":\"\"\r\n                   }\r\n                 ],\r\n                 \"winRM\":{\r\n                   \"listeners\":[\r\n                     {\r\n                       \"protocol\":null,\r\n                       \"certificateUrl\":\"\"\r\n                     }\r\n                   ]\r\n                 }\r\n               },\r\n               \"linuxConfiguration\":{\r\n                 \"disablePasswordAuthentication\":null,\r\n                 \"ssh\":{\r\n                   \"publicKeys\":[\r\n                     {\r\n                       \"path\":\"\",\r\n                       \"keyData\":\"\"\r\n                     }\r\n                   ]\r\n                 }\r\n               },\r\n               \"secrets\":[\r\n                 {\r\n                   \"sourceVault\":{\r\n                     \"id\":\"\"\r\n                   },\r\n                   \"vaultCertificates\":[\r\n                     {\r\n                       \"certificateUrl\":\"\",\r\n                       \"certificateStore\":\"\"\r\n                     }\r\n                   ]\r\n                 }\r\n               ]\r\n             },\r\n             \"storageProfile\":{\r\n               \"imageReference\":{\r\n                 \"publisher\":\"\",\r\n                 \"offer\":\"\",\r\n                 \"sku\":\"\",\r\n                 \"version\":\"\",\r\n                 \"id\":\"\"\r\n               },\r\n               \"osDisk\":{\r\n                 \"name\":\"\",\r\n                 \"caching\":null,\r\n                 \"createOption\":\"\",\r\n                 \"osType\":null,\r\n                 \"image\":{\r\n                   \"uri\":\"\"\r\n                 },\r\n                 \"vhdContainers\":[\r\n                   \"\"\r\n                 ],\r\n                 \"managedDisk\":{\r\n                   \"storageAccountType\":null\r\n                 }\r\n               },\r\n               \"dataDisks\":[\r\n                 {\r\n                   \"name\":\"\",\r\n                   \"lun\":\"\",\r\n                   \"caching\":null,\r\n                   \"createOption\":\"\",\r\n                   \"diskSizeGB\":null,\r\n                   \"managedDisk\":{\r\n                     \"storageAccountType\":null\r\n                   }\r\n                 }\r\n               ]\r\n             },\r\n             \"networkProfile\":{\r\n               \"healthProbe\":{\r\n                 \"id\":\"\"\r\n               },\r\n               \"networkInterfaceConfigurations\":[\r\n                 {\r\n                   \"name\":\"\",\r\n                   \"primary\":null,\r\n                   \"enableAcceleratedNetworking\":null,\r\n                   \"networkSecurityGroup\":{\r\n                     \"id\":\"\"\r\n                   },\r\n                   \"dnsSettings\":{\r\n                     \"dnsServers\":[\r\n                       \"\"\r\n                     ]\r\n                   },\r\n                   \"ipConfigurations\":[\r\n                     {\r\n                       \"name\":\"\",\r\n                       \"subnet\":{\r\n                         \"id\":\"\"\r\n                       },\r\n                       \"primary\":null,\r\n                       \"publicIPAddressConfiguration\":{\r\n                         \"name\":\"\",\r\n                         \"idleTimeoutInMinutes\":null,\r\n                         \"dnsSettings\":{\r\n                           \"domainNameLabel\":\"\"\r\n                         }\r\n                       },\r\n                       \"privateIPAddressVersion\":\"\",\r\n                       \"applicationGatewayBackendAddressPools\":[\r\n                         {\r\n                           \"id\":\"\"\r\n                         }\r\n                       ],\r\n                       \"loadBalancerBackendAddressPools\":[\r\n                         {\r\n                           \"id\":\"\"\r\n                         }\r\n                       ],\r\n                       \"loadBalancerInboundNatPools\":[\r\n                         {\r\n                           \"id\":\"\"\r\n                         }\r\n                       ],\r\n                       \"id\":\"\"\r\n                     }\r\n                   ],\r\n                   \"id\":\"\"\r\n                 }\r\n               ]\r\n             },\r\n             \"diagnosticsProfile\":{\r\n               \"bootDiagnostics\":{\r\n                 \"enabled\":null,\r\n                 \"storageUri\":\"\"\r\n               }\r\n             },\r\n             \"extensionProfile\":{\r\n               \"extensions\":[\r\n                 {\r\n                   \"name\":\"\",\r\n                   \"forceUpdateTag\":\"\",\r\n                   \"publisher\":\"\",\r\n                   \"type\":\"\",\r\n                   \"typeHandlerVersion\":\"\",\r\n                   \"autoUpgradeMinorVersion\":null,\r\n                   \"settings\":{\r\n                   },\r\n                   \"protectedSettings\":{\r\n                   },\r\n                   \"provisioningState\":\"\",\r\n                   \"id\":null\r\n                 }\r\n               ]\r\n             },\r\n             \"licenseType\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config virtual-machine-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--os-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-profile",
                      "description": "Remove the os-profile value."
                    },
                    {
                      "flags": "--storage-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-profile",
                      "description": "Remove the storage-profile value."
                    },
                    {
                      "flags": "--network-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-profile",
                      "description": "Remove the network-profile value."
                    },
                    {
                      "flags": "--diagnostics-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--diagnostics-profile",
                      "description": "Remove the diagnostics-profile value."
                    },
                    {
                      "flags": "--extension-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--extension-profile",
                      "description": "Remove the extension-profile value."
                    },
                    {
                      "flags": "--license-type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--license-type",
                      "description": "Remove the license-type value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "os-profile": {
              "name": "os-profile",
              "description": "Commands to configure os-profile of vmss in config file.",
              "fullName": "vmss config os-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set os-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"osProfile\" : {\r\n             \"computerNamePrefix\":\"\",\r\n             \"adminUsername\":\"\",\r\n             \"adminPassword\":\"\",\r\n             \"customData\":\"\",\r\n             \"windowsConfiguration\":{\r\n               \"provisionVMAgent\":null,\r\n               \"enableAutomaticUpdates\":null,\r\n               \"timeZone\":\"\",\r\n               \"additionalUnattendContent\":[\r\n                 {\r\n                   \"passName\":null,\r\n                   \"componentName\":null,\r\n                   \"settingName\":null,\r\n                   \"content\":\"\"\r\n                 }\r\n               ],\r\n               \"winRM\":{\r\n                 \"listeners\":[\r\n                   {\r\n                     \"protocol\":null,\r\n                     \"certificateUrl\":\"\"\r\n                   }\r\n                 ]\r\n               }\r\n             },\r\n             \"linuxConfiguration\":{\r\n               \"disablePasswordAuthentication\":null,\r\n               \"ssh\":{\r\n                 \"publicKeys\":[\r\n                   {\r\n                     \"path\":\"\",\r\n                     \"keyData\":\"\"\r\n                   }\r\n                 ]\r\n               }\r\n             },\r\n             \"secrets\":[\r\n               {\r\n                 \"sourceVault\":{\r\n                   \"id\":\"\"\r\n                 },\r\n                 \"vaultCertificates\":[\r\n                   {\r\n                     \"certificateUrl\":\"\",\r\n                     \"certificateStore\":\"\"\r\n                   }\r\n                 ]\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config os-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--computer-name-prefix <computerNamePrefix>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "long": "--computer-name-prefix",
                      "description": "Set the computer-name-prefix value."
                    },
                    {
                      "flags": "--admin-username <adminUsername>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--admin-username",
                      "description": "Set the admin-username value."
                    },
                    {
                      "flags": "--admin-password <adminPassword>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--admin-password",
                      "description": "Set the admin-password value."
                    },
                    {
                      "flags": "--custom-data <customData>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--custom-data",
                      "description": "Set the custom-data value."
                    },
                    {
                      "flags": "--windows-configuration <windowsConfiguration>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "long": "--windows-configuration",
                      "description": "Set the windows-configuration value."
                    },
                    {
                      "flags": "--linux-configuration <linuxConfiguration>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "long": "--linux-configuration",
                      "description": "Set the linux-configuration value."
                    },
                    {
                      "flags": "--secrets <secrets>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--secrets",
                      "description": "Set the secrets value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove os-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"osProfile\" : {\r\n             \"computerNamePrefix\":\"\",\r\n             \"adminUsername\":\"\",\r\n             \"adminPassword\":\"\",\r\n             \"customData\":\"\",\r\n             \"windowsConfiguration\":{\r\n               \"provisionVMAgent\":null,\r\n               \"enableAutomaticUpdates\":null,\r\n               \"timeZone\":\"\",\r\n               \"additionalUnattendContent\":[\r\n                 {\r\n                   \"passName\":null,\r\n                   \"componentName\":null,\r\n                   \"settingName\":null,\r\n                   \"content\":\"\"\r\n                 }\r\n               ],\r\n               \"winRM\":{\r\n                 \"listeners\":[\r\n                   {\r\n                     \"protocol\":null,\r\n                     \"certificateUrl\":\"\"\r\n                   }\r\n                 ]\r\n               }\r\n             },\r\n             \"linuxConfiguration\":{\r\n               \"disablePasswordAuthentication\":null,\r\n               \"ssh\":{\r\n                 \"publicKeys\":[\r\n                   {\r\n                     \"path\":\"\",\r\n                     \"keyData\":\"\"\r\n                   }\r\n                 ]\r\n               }\r\n             },\r\n             \"secrets\":[\r\n               {\r\n                 \"sourceVault\":{\r\n                   \"id\":\"\"\r\n                 },\r\n                 \"vaultCertificates\":[\r\n                   {\r\n                     \"certificateUrl\":\"\",\r\n                     \"certificateStore\":\"\"\r\n                   }\r\n                 ]\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config os-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--computer-name-prefix",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--computer-name-prefix",
                      "description": "Remove the computer-name-prefix value."
                    },
                    {
                      "flags": "--admin-username",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--admin-username",
                      "description": "Remove the admin-username value."
                    },
                    {
                      "flags": "--admin-password",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--admin-password",
                      "description": "Remove the admin-password value."
                    },
                    {
                      "flags": "--custom-data",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--custom-data",
                      "description": "Remove the custom-data value."
                    },
                    {
                      "flags": "--windows-configuration",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--windows-configuration",
                      "description": "Remove the windows-configuration value."
                    },
                    {
                      "flags": "--linux-configuration",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--linux-configuration",
                      "description": "Remove the linux-configuration value."
                    },
                    {
                      "flags": "--secrets",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--secrets",
                      "description": "Remove the secrets value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "windows-configuration": {
              "name": "windows-configuration",
              "description": "Commands to configure windows-configuration of vmss in config file.",
              "fullName": "vmss config windows-configuration",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set windows-configuration in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"windowsConfiguration\" : {\r\n             \"provisionVMAgent\":null,\r\n             \"enableAutomaticUpdates\":null,\r\n             \"timeZone\":\"\",\r\n             \"additionalUnattendContent\":[\r\n               {\r\n                 \"passName\":null,\r\n                 \"componentName\":null,\r\n                 \"settingName\":null,\r\n                 \"content\":\"\"\r\n               }\r\n             ],\r\n             \"winRM\":{\r\n               \"listeners\":[\r\n                 {\r\n                   \"protocol\":null,\r\n                   \"certificateUrl\":\"\"\r\n                 }\r\n               ]\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config windows-configuration set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--provision-vm-agent <provisionVMAgent>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--provision-vm-agent",
                      "description": "Set the provision-vm-agent value."
                    },
                    {
                      "flags": "--enable-automatic-updates <enableAutomaticUpdates>",
                      "required": -28,
                      "optional": 0,
                      "bool": true,
                      "long": "--enable-automatic-updates",
                      "description": "Set the enable-automatic-updates value."
                    },
                    {
                      "flags": "--time-zone <timeZone>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--time-zone",
                      "description": "Set the time-zone value."
                    },
                    {
                      "flags": "--additional-unattend-content <additionalUnattendContent>",
                      "required": -31,
                      "optional": 0,
                      "bool": true,
                      "long": "--additional-unattend-content",
                      "description": "Set the additional-unattend-content value."
                    },
                    {
                      "flags": "--win-rm <winRM>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--win-rm",
                      "description": "Set the win-rm value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove windows-configuration in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"windowsConfiguration\" : {\r\n             \"provisionVMAgent\":null,\r\n             \"enableAutomaticUpdates\":null,\r\n             \"timeZone\":\"\",\r\n             \"additionalUnattendContent\":[\r\n               {\r\n                 \"passName\":null,\r\n                 \"componentName\":null,\r\n                 \"settingName\":null,\r\n                 \"content\":\"\"\r\n               }\r\n             ],\r\n             \"winRM\":{\r\n               \"listeners\":[\r\n                 {\r\n                   \"protocol\":null,\r\n                   \"certificateUrl\":\"\"\r\n                 }\r\n               ]\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config windows-configuration delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--provision-vm-agent",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--provision-vm-agent",
                      "description": "Remove the provision-vm-agent value."
                    },
                    {
                      "flags": "--enable-automatic-updates",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--enable-automatic-updates",
                      "description": "Remove the enable-automatic-updates value."
                    },
                    {
                      "flags": "--time-zone",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--time-zone",
                      "description": "Remove the time-zone value."
                    },
                    {
                      "flags": "--additional-unattend-content",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--additional-unattend-content",
                      "description": "Remove the additional-unattend-content value."
                    },
                    {
                      "flags": "--win-rm",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--win-rm",
                      "description": "Remove the win-rm value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "additional-unattend-content": {
              "name": "additional-unattend-content",
              "description": "Commands to configure additional-unattend-content of vmss in config file.",
              "fullName": "vmss config additional-unattend-content",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set additional-unattend-content in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"additionalUnattendContent\" : {\r\n             \"passName\":null,\r\n             \"componentName\":null,\r\n             \"settingName\":null,\r\n             \"content\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config additional-unattend-content set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--pass-name <passName>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--pass-name",
                      "description": "Set the pass-name value."
                    },
                    {
                      "flags": "--component-name <componentName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--component-name",
                      "description": "Set the component-name value."
                    },
                    {
                      "flags": "--setting-name <settingName>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--setting-name",
                      "description": "Set the setting-name value."
                    },
                    {
                      "flags": "--content <content>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--content",
                      "description": "Set the content value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove additional-unattend-content in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"additionalUnattendContent\" : {\r\n             \"passName\":null,\r\n             \"componentName\":null,\r\n             \"settingName\":null,\r\n             \"content\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config additional-unattend-content delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--pass-name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--pass-name",
                      "description": "Remove the pass-name value."
                    },
                    {
                      "flags": "--component-name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--component-name",
                      "description": "Remove the component-name value."
                    },
                    {
                      "flags": "--setting-name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--setting-name",
                      "description": "Remove the setting-name value."
                    },
                    {
                      "flags": "--content",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--content",
                      "description": "Remove the content value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "win-rm": {
              "name": "win-rm",
              "description": "Commands to configure win-rm of vmss in config file.",
              "fullName": "vmss config win-rm",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set win-rm in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"winRM\" : {\r\n             \"listeners\":[\r\n               {\r\n                 \"protocol\":null,\r\n                 \"certificateUrl\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config win-rm set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--listeners <listeners>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--listeners",
                      "description": "Set the listeners value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove win-rm in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"winRM\" : {\r\n             \"listeners\":[\r\n               {\r\n                 \"protocol\":null,\r\n                 \"certificateUrl\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config win-rm delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--listeners",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--listeners",
                      "description": "Remove the listeners value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "listeners": {
              "name": "listeners",
              "description": "Commands to configure listeners of vmss in config file.",
              "fullName": "vmss config listeners",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set listeners in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"listeners\" : {\r\n             \"protocol\":null,\r\n             \"certificateUrl\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config listeners set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--protocol <protocol>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--protocol",
                      "description": "Set the protocol value."
                    },
                    {
                      "flags": "--certificate-url <certificateUrl>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--certificate-url",
                      "description": "Set the certificate-url value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove listeners in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"listeners\" : {\r\n             \"protocol\":null,\r\n             \"certificateUrl\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config listeners delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--protocol",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--protocol",
                      "description": "Remove the protocol value."
                    },
                    {
                      "flags": "--certificate-url",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--certificate-url",
                      "description": "Remove the certificate-url value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "linux-configuration": {
              "name": "linux-configuration",
              "description": "Commands to configure linux-configuration of vmss in config file.",
              "fullName": "vmss config linux-configuration",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set linux-configuration in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"linuxConfiguration\" : {\r\n             \"disablePasswordAuthentication\":null,\r\n             \"ssh\":{\r\n               \"publicKeys\":[\r\n                 {\r\n                   \"path\":\"\",\r\n                   \"keyData\":\"\"\r\n                 }\r\n               ]\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config linux-configuration set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--disable-password-authentication <disablePasswordAuthentication>",
                      "required": -35,
                      "optional": 0,
                      "bool": true,
                      "long": "--disable-password-authentication",
                      "description": "Set the disable-password-authentication value."
                    },
                    {
                      "flags": "--ssh <ssh>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--ssh",
                      "description": "Set the ssh value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove linux-configuration in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"linuxConfiguration\" : {\r\n             \"disablePasswordAuthentication\":null,\r\n             \"ssh\":{\r\n               \"publicKeys\":[\r\n                 {\r\n                   \"path\":\"\",\r\n                   \"keyData\":\"\"\r\n                 }\r\n               ]\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config linux-configuration delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--disable-password-authentication",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--disable-password-authentication",
                      "description": "Remove the disable-password-authentication value."
                    },
                    {
                      "flags": "--ssh",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--ssh",
                      "description": "Remove the ssh value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "ssh": {
              "name": "ssh",
              "description": "Commands to configure ssh of vmss in config file.",
              "fullName": "vmss config ssh",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set ssh in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"ssh\" : {\r\n             \"publicKeys\":[\r\n               {\r\n                 \"path\":\"\",\r\n                 \"keyData\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config ssh set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--public-keys <publicKeys>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--public-keys",
                      "description": "Set the public-keys value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove ssh in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"ssh\" : {\r\n             \"publicKeys\":[\r\n               {\r\n                 \"path\":\"\",\r\n                 \"keyData\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config ssh delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--public-keys",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--public-keys",
                      "description": "Remove the public-keys value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "public-keys": {
              "name": "public-keys",
              "description": "Commands to configure public-keys of vmss in config file.",
              "fullName": "vmss config public-keys",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set public-keys in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"publicKeys\" : {\r\n             \"path\":\"\",\r\n             \"keyData\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config public-keys set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--path <path>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--path",
                      "description": "Set the path value."
                    },
                    {
                      "flags": "--key-data <keyData>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-data",
                      "description": "Set the key-data value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove public-keys in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"publicKeys\" : {\r\n             \"path\":\"\",\r\n             \"keyData\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config public-keys delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--path",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--path",
                      "description": "Remove the path value."
                    },
                    {
                      "flags": "--key-data",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-data",
                      "description": "Remove the key-data value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "secrets": {
              "name": "secrets",
              "description": "Commands to configure secrets of vmss in config file.",
              "fullName": "vmss config secrets",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set secrets in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"secrets\" : {\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"vaultCertificates\":[\r\n               {\r\n                 \"certificateUrl\":\"\",\r\n                 \"certificateStore\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config secrets set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--source-vault <sourceVault>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Set the source-vault value."
                    },
                    {
                      "flags": "--vault-certificates <vaultCertificates>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--vault-certificates",
                      "description": "Set the vault-certificates value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove secrets in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"secrets\" : {\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"vaultCertificates\":[\r\n               {\r\n                 \"certificateUrl\":\"\",\r\n                 \"certificateStore\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config secrets delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--source-vault",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Remove the source-vault value."
                    },
                    {
                      "flags": "--vault-certificates",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--vault-certificates",
                      "description": "Remove the vault-certificates value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "source-vault": {
              "name": "source-vault",
              "description": "Commands to configure source-vault of vmss in config file.",
              "fullName": "vmss config source-vault",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set source-vault in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config source-vault set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--secrets-index <secrets-index>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--secrets-index",
                      "description": "Indexer: secrets-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove source-vault in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config source-vault delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--secrets-index <secrets-index>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--secrets-index",
                      "description": "Indexer: secrets-index."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "vault-certificates": {
              "name": "vault-certificates",
              "description": "Commands to configure vault-certificates of vmss in config file.",
              "fullName": "vmss config vault-certificates",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set vault-certificates in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"vaultCertificates\" : {\r\n             \"certificateUrl\":\"\",\r\n             \"certificateStore\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config vault-certificates set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--secrets-index <secrets-index>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--secrets-index",
                      "description": "Indexer: secrets-index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--certificate-url <certificateUrl>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--certificate-url",
                      "description": "Set the certificate-url value."
                    },
                    {
                      "flags": "--certificate-store <certificateStore>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "long": "--certificate-store",
                      "description": "Set the certificate-store value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove vault-certificates in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"vaultCertificates\" : {\r\n             \"certificateUrl\":\"\",\r\n             \"certificateStore\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config vault-certificates delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--secrets-index <secrets-index>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--secrets-index",
                      "description": "Indexer: secrets-index."
                    },
                    {
                      "flags": "--certificate-url",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--certificate-url",
                      "description": "Remove the certificate-url value."
                    },
                    {
                      "flags": "--certificate-store",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--certificate-store",
                      "description": "Remove the certificate-store value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "storage-profile": {
              "name": "storage-profile",
              "description": "Commands to configure storage-profile of vmss in config file.",
              "fullName": "vmss config storage-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set storage-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"storageProfile\" : {\r\n             \"imageReference\":{\r\n               \"publisher\":\"\",\r\n               \"offer\":\"\",\r\n               \"sku\":\"\",\r\n               \"version\":\"\",\r\n               \"id\":\"\"\r\n             },\r\n             \"osDisk\":{\r\n               \"name\":\"\",\r\n               \"caching\":null,\r\n               \"createOption\":\"\",\r\n               \"osType\":null,\r\n               \"image\":{\r\n                 \"uri\":\"\"\r\n               },\r\n               \"vhdContainers\":[\r\n                 \"\"\r\n               ],\r\n               \"managedDisk\":{\r\n                 \"storageAccountType\":null\r\n               }\r\n             },\r\n             \"dataDisks\":[\r\n               {\r\n                 \"name\":\"\",\r\n                 \"lun\":\"\",\r\n                 \"caching\":null,\r\n                 \"createOption\":\"\",\r\n                 \"diskSizeGB\":null,\r\n                 \"managedDisk\":{\r\n                   \"storageAccountType\":null\r\n                 }\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config storage-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--image-reference <imageReference>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--image-reference",
                      "description": "Set the image-reference value."
                    },
                    {
                      "flags": "--os-disk <osDisk>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-disk",
                      "description": "Set the os-disk value."
                    },
                    {
                      "flags": "--data-disks <dataDisks>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--data-disks",
                      "description": "Set the data-disks value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove storage-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"storageProfile\" : {\r\n             \"imageReference\":{\r\n               \"publisher\":\"\",\r\n               \"offer\":\"\",\r\n               \"sku\":\"\",\r\n               \"version\":\"\",\r\n               \"id\":\"\"\r\n             },\r\n             \"osDisk\":{\r\n               \"name\":\"\",\r\n               \"caching\":null,\r\n               \"createOption\":\"\",\r\n               \"osType\":null,\r\n               \"image\":{\r\n                 \"uri\":\"\"\r\n               },\r\n               \"vhdContainers\":[\r\n                 \"\"\r\n               ],\r\n               \"managedDisk\":{\r\n                 \"storageAccountType\":null\r\n               }\r\n             },\r\n             \"dataDisks\":[\r\n               {\r\n                 \"name\":\"\",\r\n                 \"lun\":\"\",\r\n                 \"caching\":null,\r\n                 \"createOption\":\"\",\r\n                 \"diskSizeGB\":null,\r\n                 \"managedDisk\":{\r\n                   \"storageAccountType\":null\r\n                 }\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config storage-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--image-reference",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--image-reference",
                      "description": "Remove the image-reference value."
                    },
                    {
                      "flags": "--os-disk",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-disk",
                      "description": "Remove the os-disk value."
                    },
                    {
                      "flags": "--data-disks",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--data-disks",
                      "description": "Remove the data-disks value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "image-reference": {
              "name": "image-reference",
              "description": "Commands to configure image-reference of vmss in config file.",
              "fullName": "vmss config image-reference",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set image-reference in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"imageReference\" : {\r\n             \"publisher\":\"\",\r\n             \"offer\":\"\",\r\n             \"sku\":\"\",\r\n             \"version\":\"\",\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config image-reference set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--publisher <publisher>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--publisher",
                      "description": "Set the publisher value."
                    },
                    {
                      "flags": "--offer <offer>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--offer",
                      "description": "Set the offer value."
                    },
                    {
                      "flags": "--sku <sku>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--sku",
                      "description": "Set the sku value."
                    },
                    {
                      "flags": "--version <version>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--version",
                      "description": "Set the version value."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove image-reference in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"imageReference\" : {\r\n             \"publisher\":\"\",\r\n             \"offer\":\"\",\r\n             \"sku\":\"\",\r\n             \"version\":\"\",\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config image-reference delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--publisher",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--publisher",
                      "description": "Remove the publisher value."
                    },
                    {
                      "flags": "--offer",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--offer",
                      "description": "Remove the offer value."
                    },
                    {
                      "flags": "--sku",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--sku",
                      "description": "Remove the sku value."
                    },
                    {
                      "flags": "--version",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--version",
                      "description": "Remove the version value."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "os-disk": {
              "name": "os-disk",
              "description": "Commands to configure os-disk of vmss in config file.",
              "fullName": "vmss config os-disk",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set os-disk in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"osDisk\" : {\r\n             \"name\":\"\",\r\n             \"caching\":null,\r\n             \"createOption\":\"\",\r\n             \"osType\":null,\r\n             \"image\":{\r\n               \"uri\":\"\"\r\n             },\r\n             \"vhdContainers\":[\r\n               \"\"\r\n             ],\r\n             \"managedDisk\":{\r\n               \"storageAccountType\":null\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config os-disk set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--caching <caching>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--caching",
                      "description": "Set the caching value."
                    },
                    {
                      "flags": "--create-option <createOption>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--create-option",
                      "description": "Set the create-option value."
                    },
                    {
                      "flags": "--os-type <osType>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-type",
                      "description": "Set the os-type value."
                    },
                    {
                      "flags": "--image <image>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--image",
                      "description": "Set the image value."
                    },
                    {
                      "flags": "--vhd-containers <vhdContainers>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--vhd-containers",
                      "description": "Set the vhd-containers value."
                    },
                    {
                      "flags": "--managed-disk <managedDisk>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--managed-disk",
                      "description": "Set the managed-disk value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove os-disk in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"osDisk\" : {\r\n             \"name\":\"\",\r\n             \"caching\":null,\r\n             \"createOption\":\"\",\r\n             \"osType\":null,\r\n             \"image\":{\r\n               \"uri\":\"\"\r\n             },\r\n             \"vhdContainers\":[\r\n               \"\"\r\n             ],\r\n             \"managedDisk\":{\r\n               \"storageAccountType\":null\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config os-disk delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--caching",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--caching",
                      "description": "Remove the caching value."
                    },
                    {
                      "flags": "--create-option",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--create-option",
                      "description": "Remove the create-option value."
                    },
                    {
                      "flags": "--os-type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-type",
                      "description": "Remove the os-type value."
                    },
                    {
                      "flags": "--image",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--image",
                      "description": "Remove the image value."
                    },
                    {
                      "flags": "--vhd-containers",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--vhd-containers",
                      "description": "Remove the vhd-containers value."
                    },
                    {
                      "flags": "--managed-disk",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--managed-disk",
                      "description": "Remove the managed-disk value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "image": {
              "name": "image",
              "description": "Commands to configure image of vmss in config file.",
              "fullName": "vmss config image",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set image in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"image\" : {\r\n             \"uri\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config image set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--uri <uri>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--uri",
                      "description": "Set the uri value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove image in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"image\" : {\r\n             \"uri\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config image delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--uri",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--uri",
                      "description": "Remove the uri value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "vhd-containers": {
              "name": "vhd-containers",
              "description": "Commands to configure vhd-containers of vmss in config file.",
              "fullName": "vmss config vhd-containers",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set vhd-containers in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"vhdContainers\" : \"\"\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config vhd-containers set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove vhd-containers in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"vhdContainers\" : \"\"\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config vhd-containers delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "managed-disk": {
              "name": "managed-disk",
              "description": "Commands to configure managed-disk of vmss in config file.",
              "fullName": "vmss config managed-disk",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set managed-disk in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"managedDisk\" : {\r\n             \"storageAccountType\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config managed-disk set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--storage-account-type <storageAccountType>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-account-type",
                      "description": "Set the storage-account-type value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove managed-disk in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"managedDisk\" : {\r\n             \"storageAccountType\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config managed-disk delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--storage-account-type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-account-type",
                      "description": "Remove the storage-account-type value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "data-disks": {
              "name": "data-disks",
              "description": "Commands to configure data-disks of vmss in config file.",
              "fullName": "vmss config data-disks",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set data-disks in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"dataDisks\" : {\r\n             \"name\":\"\",\r\n             \"lun\":\"\",\r\n             \"caching\":null,\r\n             \"createOption\":\"\",\r\n             \"diskSizeGB\":null,\r\n             \"managedDisk\":{\r\n               \"storageAccountType\":null\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config data-disks set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--lun <lun>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--lun",
                      "description": "Set the lun value."
                    },
                    {
                      "flags": "--caching <caching>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--caching",
                      "description": "Set the caching value."
                    },
                    {
                      "flags": "--create-option <createOption>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--create-option",
                      "description": "Set the create-option value."
                    },
                    {
                      "flags": "--disk-size-g-b <diskSizeGB>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-size-g-b",
                      "description": "Set the disk-size-g-b value."
                    },
                    {
                      "flags": "--managed-disk <managedDisk>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--managed-disk",
                      "description": "Set the managed-disk value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove data-disks in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"dataDisks\" : {\r\n             \"name\":\"\",\r\n             \"lun\":\"\",\r\n             \"caching\":null,\r\n             \"createOption\":\"\",\r\n             \"diskSizeGB\":null,\r\n             \"managedDisk\":{\r\n               \"storageAccountType\":null\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config data-disks delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--lun",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--lun",
                      "description": "Remove the lun value."
                    },
                    {
                      "flags": "--caching",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--caching",
                      "description": "Remove the caching value."
                    },
                    {
                      "flags": "--create-option",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--create-option",
                      "description": "Remove the create-option value."
                    },
                    {
                      "flags": "--disk-size-g-b",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-size-g-b",
                      "description": "Remove the disk-size-g-b value."
                    },
                    {
                      "flags": "--managed-disk",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--managed-disk",
                      "description": "Remove the managed-disk value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "data-disks-managed-disk": {
              "name": "data-disks-managed-disk",
              "description": "Commands to configure data-disks-managed-disk of vmss in config file.",
              "fullName": "vmss config data-disks-managed-disk",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set data-disks-managed-disk in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"managedDisk\" : {\r\n             \"storageAccountType\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config data-disks-managed-disk set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--data-disks-index <data-disks-index>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--data-disks-index",
                      "description": "Indexer: data-disks-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--storage-account-type <storageAccountType>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-account-type",
                      "description": "Set the storage-account-type value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove data-disks-managed-disk in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"managedDisk\" : {\r\n             \"storageAccountType\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config data-disks-managed-disk delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--data-disks-index <data-disks-index>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--data-disks-index",
                      "description": "Indexer: data-disks-index."
                    },
                    {
                      "flags": "--storage-account-type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-account-type",
                      "description": "Remove the storage-account-type value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "network-profile": {
              "name": "network-profile",
              "description": "Commands to configure network-profile of vmss in config file.",
              "fullName": "vmss config network-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set network-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"networkProfile\" : {\r\n             \"healthProbe\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"networkInterfaceConfigurations\":[\r\n               {\r\n                 \"name\":\"\",\r\n                 \"primary\":null,\r\n                 \"enableAcceleratedNetworking\":null,\r\n                 \"networkSecurityGroup\":{\r\n                   \"id\":\"\"\r\n                 },\r\n                 \"dnsSettings\":{\r\n                   \"dnsServers\":[\r\n                     \"\"\r\n                   ]\r\n                 },\r\n                 \"ipConfigurations\":[\r\n                   {\r\n                     \"name\":\"\",\r\n                     \"subnet\":{\r\n                       \"id\":\"\"\r\n                     },\r\n                     \"primary\":null,\r\n                     \"publicIPAddressConfiguration\":{\r\n                       \"name\":\"\",\r\n                       \"idleTimeoutInMinutes\":null,\r\n                       \"dnsSettings\":{\r\n                         \"domainNameLabel\":\"\"\r\n                       }\r\n                     },\r\n                     \"privateIPAddressVersion\":\"\",\r\n                     \"applicationGatewayBackendAddressPools\":[\r\n                       {\r\n                         \"id\":\"\"\r\n                       }\r\n                     ],\r\n                     \"loadBalancerBackendAddressPools\":[\r\n                       {\r\n                         \"id\":\"\"\r\n                       }\r\n                     ],\r\n                     \"loadBalancerInboundNatPools\":[\r\n                       {\r\n                         \"id\":\"\"\r\n                       }\r\n                     ],\r\n                     \"id\":\"\"\r\n                   }\r\n                 ],\r\n                 \"id\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config network-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--health-probe <healthProbe>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--health-probe",
                      "description": "Set the health-probe value."
                    },
                    {
                      "flags": "--network-interface-configurations <networkInterfaceConfigurations>",
                      "required": -36,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations",
                      "description": "Set the network-interface-configurations value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove network-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"networkProfile\" : {\r\n             \"healthProbe\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"networkInterfaceConfigurations\":[\r\n               {\r\n                 \"name\":\"\",\r\n                 \"primary\":null,\r\n                 \"enableAcceleratedNetworking\":null,\r\n                 \"networkSecurityGroup\":{\r\n                   \"id\":\"\"\r\n                 },\r\n                 \"dnsSettings\":{\r\n                   \"dnsServers\":[\r\n                     \"\"\r\n                   ]\r\n                 },\r\n                 \"ipConfigurations\":[\r\n                   {\r\n                     \"name\":\"\",\r\n                     \"subnet\":{\r\n                       \"id\":\"\"\r\n                     },\r\n                     \"primary\":null,\r\n                     \"publicIPAddressConfiguration\":{\r\n                       \"name\":\"\",\r\n                       \"idleTimeoutInMinutes\":null,\r\n                       \"dnsSettings\":{\r\n                         \"domainNameLabel\":\"\"\r\n                       }\r\n                     },\r\n                     \"privateIPAddressVersion\":\"\",\r\n                     \"applicationGatewayBackendAddressPools\":[\r\n                       {\r\n                         \"id\":\"\"\r\n                       }\r\n                     ],\r\n                     \"loadBalancerBackendAddressPools\":[\r\n                       {\r\n                         \"id\":\"\"\r\n                       }\r\n                     ],\r\n                     \"loadBalancerInboundNatPools\":[\r\n                       {\r\n                         \"id\":\"\"\r\n                       }\r\n                     ],\r\n                     \"id\":\"\"\r\n                   }\r\n                 ],\r\n                 \"id\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config network-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--health-probe",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--health-probe",
                      "description": "Remove the health-probe value."
                    },
                    {
                      "flags": "--network-interface-configurations",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations",
                      "description": "Remove the network-interface-configurations value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "health-probe": {
              "name": "health-probe",
              "description": "Commands to configure health-probe of vmss in config file.",
              "fullName": "vmss config health-probe",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set health-probe in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"healthProbe\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config health-probe set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove health-probe in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"healthProbe\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config health-probe delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "network-interface-configurations": {
              "name": "network-interface-configurations",
              "description": "Commands to configure network-interface-configurations of vmss in config file.",
              "fullName": "vmss config network-interface-configurations",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set network-interface-configurations in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"networkInterfaceConfigurations\" : {\r\n             \"name\":\"\",\r\n             \"primary\":null,\r\n             \"enableAcceleratedNetworking\":null,\r\n             \"networkSecurityGroup\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"dnsSettings\":{\r\n               \"dnsServers\":[\r\n                 \"\"\r\n               ]\r\n             },\r\n             \"ipConfigurations\":[\r\n               {\r\n                 \"name\":\"\",\r\n                 \"subnet\":{\r\n                   \"id\":\"\"\r\n                 },\r\n                 \"primary\":null,\r\n                 \"publicIPAddressConfiguration\":{\r\n                   \"name\":\"\",\r\n                   \"idleTimeoutInMinutes\":null,\r\n                   \"dnsSettings\":{\r\n                     \"domainNameLabel\":\"\"\r\n                   }\r\n                 },\r\n                 \"privateIPAddressVersion\":\"\",\r\n                 \"applicationGatewayBackendAddressPools\":[\r\n                   {\r\n                     \"id\":\"\"\r\n                   }\r\n                 ],\r\n                 \"loadBalancerBackendAddressPools\":[\r\n                   {\r\n                     \"id\":\"\"\r\n                   }\r\n                 ],\r\n                 \"loadBalancerInboundNatPools\":[\r\n                   {\r\n                     \"id\":\"\"\r\n                   }\r\n                 ],\r\n                 \"id\":\"\"\r\n               }\r\n             ],\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config network-interface-configurations set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--primary <primary>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--primary",
                      "description": "Set the primary value."
                    },
                    {
                      "flags": "--enable-accelerated-networking <enableAcceleratedNetworking>",
                      "required": -33,
                      "optional": 0,
                      "bool": true,
                      "long": "--enable-accelerated-networking",
                      "description": "Set the enable-accelerated-networking value."
                    },
                    {
                      "flags": "--network-security-group <networkSecurityGroup>",
                      "required": -26,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-security-group",
                      "description": "Set the network-security-group value."
                    },
                    {
                      "flags": "--dns-settings <dnsSettings>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--dns-settings",
                      "description": "Set the dns-settings value."
                    },
                    {
                      "flags": "--ip-configurations <ipConfigurations>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations",
                      "description": "Set the ip-configurations value."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove network-interface-configurations in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"networkInterfaceConfigurations\" : {\r\n             \"name\":\"\",\r\n             \"primary\":null,\r\n             \"enableAcceleratedNetworking\":null,\r\n             \"networkSecurityGroup\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"dnsSettings\":{\r\n               \"dnsServers\":[\r\n                 \"\"\r\n               ]\r\n             },\r\n             \"ipConfigurations\":[\r\n               {\r\n                 \"name\":\"\",\r\n                 \"subnet\":{\r\n                   \"id\":\"\"\r\n                 },\r\n                 \"primary\":null,\r\n                 \"publicIPAddressConfiguration\":{\r\n                   \"name\":\"\",\r\n                   \"idleTimeoutInMinutes\":null,\r\n                   \"dnsSettings\":{\r\n                     \"domainNameLabel\":\"\"\r\n                   }\r\n                 },\r\n                 \"privateIPAddressVersion\":\"\",\r\n                 \"applicationGatewayBackendAddressPools\":[\r\n                   {\r\n                     \"id\":\"\"\r\n                   }\r\n                 ],\r\n                 \"loadBalancerBackendAddressPools\":[\r\n                   {\r\n                     \"id\":\"\"\r\n                   }\r\n                 ],\r\n                 \"loadBalancerInboundNatPools\":[\r\n                   {\r\n                     \"id\":\"\"\r\n                   }\r\n                 ],\r\n                 \"id\":\"\"\r\n               }\r\n             ],\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config network-interface-configurations delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--primary",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--primary",
                      "description": "Remove the primary value."
                    },
                    {
                      "flags": "--enable-accelerated-networking",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--enable-accelerated-networking",
                      "description": "Remove the enable-accelerated-networking value."
                    },
                    {
                      "flags": "--network-security-group",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-security-group",
                      "description": "Remove the network-security-group value."
                    },
                    {
                      "flags": "--dns-settings",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--dns-settings",
                      "description": "Remove the dns-settings value."
                    },
                    {
                      "flags": "--ip-configurations",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations",
                      "description": "Remove the ip-configurations value."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "network-security-group": {
              "name": "network-security-group",
              "description": "Commands to configure network-security-group of vmss in config file.",
              "fullName": "vmss config network-security-group",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set network-security-group in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"networkSecurityGroup\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config network-security-group set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove network-security-group in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"networkSecurityGroup\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config network-security-group delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "dns-settings": {
              "name": "dns-settings",
              "description": "Commands to configure dns-settings of vmss in config file.",
              "fullName": "vmss config dns-settings",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set dns-settings in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"dnsSettings\" : {\r\n             \"dnsServers\":[\r\n               \"\"\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config dns-settings set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--dns-servers <dnsServers>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--dns-servers",
                      "description": "Set the dns-servers value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove dns-settings in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"dnsSettings\" : {\r\n             \"dnsServers\":[\r\n               \"\"\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config dns-settings delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--dns-servers",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--dns-servers",
                      "description": "Remove the dns-servers value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "dns-servers": {
              "name": "dns-servers",
              "description": "Commands to configure dns-servers of vmss in config file.",
              "fullName": "vmss config dns-servers",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set dns-servers in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"dnsServers\" : \"\"\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config dns-servers set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove dns-servers in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"dnsServers\" : \"\"\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config dns-servers delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "ip-configurations": {
              "name": "ip-configurations",
              "description": "Commands to configure ip-configurations of vmss in config file.",
              "fullName": "vmss config ip-configurations",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set ip-configurations in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"ipConfigurations\" : {\r\n             \"name\":\"\",\r\n             \"subnet\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"primary\":null,\r\n             \"publicIPAddressConfiguration\":{\r\n               \"name\":\"\",\r\n               \"idleTimeoutInMinutes\":null,\r\n               \"dnsSettings\":{\r\n                 \"domainNameLabel\":\"\"\r\n               }\r\n             },\r\n             \"privateIPAddressVersion\":\"\",\r\n             \"applicationGatewayBackendAddressPools\":[\r\n               {\r\n                 \"id\":\"\"\r\n               }\r\n             ],\r\n             \"loadBalancerBackendAddressPools\":[\r\n               {\r\n                 \"id\":\"\"\r\n               }\r\n             ],\r\n             \"loadBalancerInboundNatPools\":[\r\n               {\r\n                 \"id\":\"\"\r\n               }\r\n             ],\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config ip-configurations set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--subnet <subnet>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--subnet",
                      "description": "Set the subnet value."
                    },
                    {
                      "flags": "--primary <primary>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--primary",
                      "description": "Set the primary value."
                    },
                    {
                      "flags": "--public-ip-address-configuration <publicIPAddressConfiguration>",
                      "required": -35,
                      "optional": 0,
                      "bool": true,
                      "long": "--public-ip-address-configuration",
                      "description": "Set the public-ip-address-configuration value."
                    },
                    {
                      "flags": "--private-ip-address-version <privateIPAddressVersion>",
                      "required": -30,
                      "optional": 0,
                      "bool": true,
                      "long": "--private-ip-address-version",
                      "description": "Set the private-ip-address-version value."
                    },
                    {
                      "flags": "--application-gateway-backend-address-pools <applicationGatewayBackendAddressPools>",
                      "required": -45,
                      "optional": 0,
                      "bool": true,
                      "long": "--application-gateway-backend-address-pools",
                      "description": "Set the application-gateway-backend-address-pools value."
                    },
                    {
                      "flags": "--load-balancer-backend-address-pools <loadBalancerBackendAddressPools>",
                      "required": -39,
                      "optional": 0,
                      "bool": true,
                      "long": "--load-balancer-backend-address-pools",
                      "description": "Set the load-balancer-backend-address-pools value."
                    },
                    {
                      "flags": "--load-balancer-inbound-nat-pools <loadBalancerInboundNatPools>",
                      "required": -35,
                      "optional": 0,
                      "bool": true,
                      "long": "--load-balancer-inbound-nat-pools",
                      "description": "Set the load-balancer-inbound-nat-pools value."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove ip-configurations in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"ipConfigurations\" : {\r\n             \"name\":\"\",\r\n             \"subnet\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"primary\":null,\r\n             \"publicIPAddressConfiguration\":{\r\n               \"name\":\"\",\r\n               \"idleTimeoutInMinutes\":null,\r\n               \"dnsSettings\":{\r\n                 \"domainNameLabel\":\"\"\r\n               }\r\n             },\r\n             \"privateIPAddressVersion\":\"\",\r\n             \"applicationGatewayBackendAddressPools\":[\r\n               {\r\n                 \"id\":\"\"\r\n               }\r\n             ],\r\n             \"loadBalancerBackendAddressPools\":[\r\n               {\r\n                 \"id\":\"\"\r\n               }\r\n             ],\r\n             \"loadBalancerInboundNatPools\":[\r\n               {\r\n                 \"id\":\"\"\r\n               }\r\n             ],\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config ip-configurations delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--subnet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--subnet",
                      "description": "Remove the subnet value."
                    },
                    {
                      "flags": "--primary",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--primary",
                      "description": "Remove the primary value."
                    },
                    {
                      "flags": "--public-ip-address-configuration",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--public-ip-address-configuration",
                      "description": "Remove the public-ip-address-configuration value."
                    },
                    {
                      "flags": "--private-ip-address-version",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--private-ip-address-version",
                      "description": "Remove the private-ip-address-version value."
                    },
                    {
                      "flags": "--application-gateway-backend-address-pools",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--application-gateway-backend-address-pools",
                      "description": "Remove the application-gateway-backend-address-pools value."
                    },
                    {
                      "flags": "--load-balancer-backend-address-pools",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--load-balancer-backend-address-pools",
                      "description": "Remove the load-balancer-backend-address-pools value."
                    },
                    {
                      "flags": "--load-balancer-inbound-nat-pools",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--load-balancer-inbound-nat-pools",
                      "description": "Remove the load-balancer-inbound-nat-pools value."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "subnet": {
              "name": "subnet",
              "description": "Commands to configure subnet of vmss in config file.",
              "fullName": "vmss config subnet",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set subnet in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"subnet\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config subnet set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove subnet in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"subnet\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config subnet delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "public-ip-address-configuration": {
              "name": "public-ip-address-configuration",
              "description": "Commands to configure public-ip-address-configuration of vmss in config file.",
              "fullName": "vmss config public-ip-address-configuration",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set public-ip-address-configuration in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"publicIPAddressConfiguration\" : {\r\n             \"name\":\"\",\r\n             \"idleTimeoutInMinutes\":null,\r\n             \"dnsSettings\":{\r\n               \"domainNameLabel\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config public-ip-address-configuration set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--idle-timeout-in-minutes <idleTimeoutInMinutes>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--idle-timeout-in-minutes",
                      "description": "Set the idle-timeout-in-minutes value."
                    },
                    {
                      "flags": "--dns-settings <dnsSettings>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--dns-settings",
                      "description": "Set the dns-settings value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove public-ip-address-configuration in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"publicIPAddressConfiguration\" : {\r\n             \"name\":\"\",\r\n             \"idleTimeoutInMinutes\":null,\r\n             \"dnsSettings\":{\r\n               \"domainNameLabel\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config public-ip-address-configuration delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--idle-timeout-in-minutes",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--idle-timeout-in-minutes",
                      "description": "Remove the idle-timeout-in-minutes value."
                    },
                    {
                      "flags": "--dns-settings",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--dns-settings",
                      "description": "Remove the dns-settings value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "public-ip-address-configuration-dns-settings": {
              "name": "public-ip-address-configuration-dns-settings",
              "description": "Commands to configure public-ip-address-configuration-dns-settings of vmss in config file.",
              "fullName": "vmss config public-ip-address-configuration-dns-settings",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set public-ip-address-configuration-dns-settings in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"dnsSettings\" : {\r\n             \"domainNameLabel\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config public-ip-address-configuration-dns-settings set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--domain-name-label <domainNameLabel>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "long": "--domain-name-label",
                      "description": "Set the domain-name-label value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove public-ip-address-configuration-dns-settings in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"dnsSettings\" : {\r\n             \"domainNameLabel\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config public-ip-address-configuration-dns-settings delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--domain-name-label",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--domain-name-label",
                      "description": "Remove the domain-name-label value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "application-gateway-backend-address-pools": {
              "name": "application-gateway-backend-address-pools",
              "description": "Commands to configure application-gateway-backend-address-pools of vmss in config file.",
              "fullName": "vmss config application-gateway-backend-address-pools",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set application-gateway-backend-address-pools in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"applicationGatewayBackendAddressPools\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config application-gateway-backend-address-pools set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove application-gateway-backend-address-pools in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"applicationGatewayBackendAddressPools\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config application-gateway-backend-address-pools delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "load-balancer-backend-address-pools": {
              "name": "load-balancer-backend-address-pools",
              "description": "Commands to configure load-balancer-backend-address-pools of vmss in config file.",
              "fullName": "vmss config load-balancer-backend-address-pools",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set load-balancer-backend-address-pools in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"loadBalancerBackendAddressPools\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config load-balancer-backend-address-pools set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove load-balancer-backend-address-pools in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"loadBalancerBackendAddressPools\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config load-balancer-backend-address-pools delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "load-balancer-inbound-nat-pools": {
              "name": "load-balancer-inbound-nat-pools",
              "description": "Commands to configure load-balancer-inbound-nat-pools of vmss in config file.",
              "fullName": "vmss config load-balancer-inbound-nat-pools",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set load-balancer-inbound-nat-pools in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"loadBalancerInboundNatPools\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config load-balancer-inbound-nat-pools set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove load-balancer-inbound-nat-pools in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"loadBalancerInboundNatPools\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config load-balancer-inbound-nat-pools delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "diagnostics-profile": {
              "name": "diagnostics-profile",
              "description": "Commands to configure diagnostics-profile of vmss in config file.",
              "fullName": "vmss config diagnostics-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set diagnostics-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"diagnosticsProfile\" : {\r\n             \"bootDiagnostics\":{\r\n               \"enabled\":null,\r\n               \"storageUri\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config diagnostics-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--boot-diagnostics <bootDiagnostics>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--boot-diagnostics",
                      "description": "Set the boot-diagnostics value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove diagnostics-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"diagnosticsProfile\" : {\r\n             \"bootDiagnostics\":{\r\n               \"enabled\":null,\r\n               \"storageUri\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config diagnostics-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--boot-diagnostics",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--boot-diagnostics",
                      "description": "Remove the boot-diagnostics value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "boot-diagnostics": {
              "name": "boot-diagnostics",
              "description": "Commands to configure boot-diagnostics of vmss in config file.",
              "fullName": "vmss config boot-diagnostics",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set boot-diagnostics in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"bootDiagnostics\" : {\r\n             \"enabled\":null,\r\n             \"storageUri\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config boot-diagnostics set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--enabled <enabled>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--enabled",
                      "description": "Set the enabled value."
                    },
                    {
                      "flags": "--storage-uri <storageUri>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-uri",
                      "description": "Set the storage-uri value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove boot-diagnostics in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"bootDiagnostics\" : {\r\n             \"enabled\":null,\r\n             \"storageUri\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config boot-diagnostics delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--enabled",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--enabled",
                      "description": "Remove the enabled value."
                    },
                    {
                      "flags": "--storage-uri",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-uri",
                      "description": "Remove the storage-uri value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "extension-profile": {
              "name": "extension-profile",
              "description": "Commands to configure extension-profile of vmss in config file.",
              "fullName": "vmss config extension-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set extension-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"extensionProfile\" : {\r\n             \"extensions\":[\r\n               {\r\n                 \"name\":\"\",\r\n                 \"forceUpdateTag\":\"\",\r\n                 \"publisher\":\"\",\r\n                 \"type\":\"\",\r\n                 \"typeHandlerVersion\":\"\",\r\n                 \"autoUpgradeMinorVersion\":null,\r\n                 \"settings\":{\r\n                 },\r\n                 \"protectedSettings\":{\r\n                 },\r\n                 \"provisioningState\":\"\",\r\n                 \"id\":null\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config extension-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--extensions <extensions>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--extensions",
                      "description": "Set the extensions value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove extension-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"extensionProfile\" : {\r\n             \"extensions\":[\r\n               {\r\n                 \"name\":\"\",\r\n                 \"forceUpdateTag\":\"\",\r\n                 \"publisher\":\"\",\r\n                 \"type\":\"\",\r\n                 \"typeHandlerVersion\":\"\",\r\n                 \"autoUpgradeMinorVersion\":null,\r\n                 \"settings\":{\r\n                 },\r\n                 \"protectedSettings\":{\r\n                 },\r\n                 \"provisioningState\":\"\",\r\n                 \"id\":null\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config extension-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--extensions",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--extensions",
                      "description": "Remove the extensions value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "extensions": {
              "name": "extensions",
              "description": "Commands to configure extensions of vmss in config file.",
              "fullName": "vmss config extensions",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set extensions in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"extensions\" : {\r\n             \"name\":\"\",\r\n             \"forceUpdateTag\":\"\",\r\n             \"publisher\":\"\",\r\n             \"type\":\"\",\r\n             \"typeHandlerVersion\":\"\",\r\n             \"autoUpgradeMinorVersion\":null,\r\n             \"settings\":{\r\n             },\r\n             \"protectedSettings\":{\r\n             },\r\n             \"provisioningState\":\"\",\r\n             \"id\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config extensions set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--force-update-tag <forceUpdateTag>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--force-update-tag",
                      "description": "Set the force-update-tag value."
                    },
                    {
                      "flags": "--publisher <publisher>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--publisher",
                      "description": "Set the publisher value."
                    },
                    {
                      "flags": "--type <type>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Set the type value."
                    },
                    {
                      "flags": "--type-handler-version <typeHandlerVersion>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "long": "--type-handler-version",
                      "description": "Set the type-handler-version value."
                    },
                    {
                      "flags": "--auto-upgrade-minor-version <autoUpgradeMinorVersion>",
                      "required": -30,
                      "optional": 0,
                      "bool": true,
                      "long": "--auto-upgrade-minor-version",
                      "description": "Set the auto-upgrade-minor-version value."
                    },
                    {
                      "flags": "--settings <settings>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--settings",
                      "description": "Set the settings value."
                    },
                    {
                      "flags": "--protected-settings <protectedSettings>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--protected-settings",
                      "description": "Set the protected-settings value."
                    },
                    {
                      "flags": "--provisioning-state <provisioningState>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--provisioning-state",
                      "description": "Set the provisioning-state value."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove extensions in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"extensions\" : {\r\n             \"name\":\"\",\r\n             \"forceUpdateTag\":\"\",\r\n             \"publisher\":\"\",\r\n             \"type\":\"\",\r\n             \"typeHandlerVersion\":\"\",\r\n             \"autoUpgradeMinorVersion\":null,\r\n             \"settings\":{\r\n             },\r\n             \"protectedSettings\":{\r\n             },\r\n             \"provisioningState\":\"\",\r\n             \"id\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config extensions delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--force-update-tag",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--force-update-tag",
                      "description": "Remove the force-update-tag value."
                    },
                    {
                      "flags": "--publisher",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--publisher",
                      "description": "Remove the publisher value."
                    },
                    {
                      "flags": "--type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Remove the type value."
                    },
                    {
                      "flags": "--type-handler-version",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type-handler-version",
                      "description": "Remove the type-handler-version value."
                    },
                    {
                      "flags": "--auto-upgrade-minor-version",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--auto-upgrade-minor-version",
                      "description": "Remove the auto-upgrade-minor-version value."
                    },
                    {
                      "flags": "--settings",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--settings",
                      "description": "Remove the settings value."
                    },
                    {
                      "flags": "--protected-settings",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--protected-settings",
                      "description": "Remove the protected-settings value."
                    },
                    {
                      "flags": "--provisioning-state",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--provisioning-state",
                      "description": "Remove the provisioning-state value."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "identity": {
              "name": "identity",
              "description": "Commands to configure identity of vmss in config file.",
              "fullName": "vmss config identity",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set identity in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"identity\" : {\r\n             \"principalId\":\"\",\r\n             \"tenantId\":\"\",\r\n             \"type\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config identity set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--principal-id <principalId>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--principal-id",
                      "description": "Set the principal-id value."
                    },
                    {
                      "flags": "--tenant-id <tenantId>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--tenant-id",
                      "description": "Set the tenant-id value."
                    },
                    {
                      "flags": "--type <type>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Set the type value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove identity in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"identity\" : {\r\n             \"principalId\":\"\",\r\n             \"tenantId\":\"\",\r\n             \"type\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config identity delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--principal-id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--principal-id",
                      "description": "Remove the principal-id value."
                    },
                    {
                      "flags": "--tenant-id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--tenant-id",
                      "description": "Remove the tenant-id value."
                    },
                    {
                      "flags": "--type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Remove the type value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "zones": {
              "name": "zones",
              "description": "Commands to configure zones of vmss in config file.",
              "fullName": "vmss config zones",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set zones in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"zones\" : \"\"\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config zones set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove zones in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"zones\" : \"\"\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss config zones delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "update-parameters": {
          "name": "update-parameters",
          "description": "Commands to manage configuration of virtual-machine-scale-sets in the parameter file.",
          "fullName": "vmss update-parameters",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Generate virtualMachineScaleSetsUpdate parameter string or files.",
              "fullName": "vmss update-parameters create",
              "usage": "[options]",
              "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                }
              ]
            },
            {
              "name": "patch",
              "description": "Command to patch virtualMachineScaleSetsUpdate parameter JSON file.",
              "fullName": "vmss update-parameters patch",
              "usage": "[options]",
              "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                },
                {
                  "flags": "--operation <operation>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--operation",
                  "description": "The JSON patch operation: add, remove, or replace."
                },
                {
                  "flags": "--path <path>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--path",
                  "description": "The JSON data path, e.g.: \"foo/1\"."
                },
                {
                  "flags": "--value <value>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--value",
                  "description": "The JSON value."
                },
                {
                  "flags": "--parse",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--parse",
                  "description": "Parse the JSON value to object."
                }
              ]
            }
          ],
          "categories": {
            "virtual-machine-scale-set-update": {
              "name": "virtual-machine-scale-set-update",
              "description": "Commands to configure virtual-machine-scale-set-update of vmss in update-parameters file.",
              "fullName": "vmss update-parameters virtual-machine-scale-set-update",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set virtual-machine-scale-set-update in update-parameters string or files, e.g. \r\n{\r\n  \"sku\":{\r\n    \"name\":\"\",\r\n    \"tier\":\"\",\r\n    \"capacity\":null\r\n  },\r\n  \"plan\":{\r\n    \"name\":\"\",\r\n    \"publisher\":\"\",\r\n    \"product\":\"\",\r\n    \"promotionCode\":\"\"\r\n  },\r\n  \"upgradePolicy\":{\r\n    \"mode\":null,\r\n    \"rollingUpgradePolicy\":{\r\n      \"maxBatchInstancePercent\":null,\r\n      \"maxUnhealthyInstancePercent\":null,\r\n      \"maxUnhealthyUpgradedInstancePercent\":null,\r\n      \"pauseTimeBetweenBatches\":\"\"\r\n    },\r\n    \"automaticOSUpgrade\":null\r\n  },\r\n  \"virtualMachineProfile\":{\r\n    \"osProfile\":{\r\n      \"customData\":\"\",\r\n      \"windowsConfiguration\":{\r\n        \"provisionVMAgent\":null,\r\n        \"enableAutomaticUpdates\":null,\r\n        \"timeZone\":\"\",\r\n        \"additionalUnattendContent\":[\r\n          {\r\n            \"passName\":null,\r\n            \"componentName\":null,\r\n            \"settingName\":null,\r\n            \"content\":\"\"\r\n          }\r\n        ],\r\n        \"winRM\":{\r\n          \"listeners\":[\r\n            {\r\n              \"protocol\":null,\r\n              \"certificateUrl\":\"\"\r\n            }\r\n          ]\r\n        }\r\n      },\r\n      \"linuxConfiguration\":{\r\n        \"disablePasswordAuthentication\":null,\r\n        \"ssh\":{\r\n          \"publicKeys\":[\r\n            {\r\n              \"path\":\"\",\r\n              \"keyData\":\"\"\r\n            }\r\n          ]\r\n        }\r\n      },\r\n      \"secrets\":[\r\n        {\r\n          \"sourceVault\":{\r\n            \"id\":\"\"\r\n          },\r\n          \"vaultCertificates\":[\r\n            {\r\n              \"certificateUrl\":\"\",\r\n              \"certificateStore\":\"\"\r\n            }\r\n          ]\r\n        }\r\n      ]\r\n    },\r\n    \"storageProfile\":{\r\n      \"imageReference\":{\r\n        \"publisher\":\"\",\r\n        \"offer\":\"\",\r\n        \"sku\":\"\",\r\n        \"version\":\"\",\r\n        \"id\":\"\"\r\n      },\r\n      \"osDisk\":{\r\n        \"caching\":null,\r\n        \"image\":{\r\n          \"uri\":\"\"\r\n        },\r\n        \"vhdContainers\":[\r\n          \"\"\r\n        ],\r\n        \"managedDisk\":{\r\n          \"storageAccountType\":null\r\n        }\r\n      },\r\n      \"dataDisks\":[\r\n        {\r\n          \"name\":\"\",\r\n          \"lun\":\"\",\r\n          \"caching\":null,\r\n          \"createOption\":\"\",\r\n          \"diskSizeGB\":null,\r\n          \"managedDisk\":{\r\n            \"storageAccountType\":null\r\n          }\r\n        }\r\n      ]\r\n    },\r\n    \"networkProfile\":{\r\n      \"networkInterfaceConfigurations\":[\r\n        {\r\n          \"name\":\"\",\r\n          \"primary\":null,\r\n          \"enableAcceleratedNetworking\":null,\r\n          \"networkSecurityGroup\":{\r\n            \"id\":\"\"\r\n          },\r\n          \"dnsSettings\":{\r\n            \"dnsServers\":[\r\n              \"\"\r\n            ]\r\n          },\r\n          \"ipConfigurations\":[\r\n            {\r\n              \"name\":\"\",\r\n              \"subnet\":{\r\n                \"id\":\"\"\r\n              },\r\n              \"primary\":null,\r\n              \"publicIPAddressConfiguration\":{\r\n                \"name\":\"\",\r\n                \"idleTimeoutInMinutes\":null,\r\n                \"dnsSettings\":{\r\n                  \"domainNameLabel\":\"\"\r\n                }\r\n              },\r\n              \"privateIPAddressVersion\":\"\",\r\n              \"applicationGatewayBackendAddressPools\":[\r\n                {\r\n                  \"id\":\"\"\r\n                }\r\n              ],\r\n              \"loadBalancerBackendAddressPools\":[\r\n                {\r\n                  \"id\":\"\"\r\n                }\r\n              ],\r\n              \"loadBalancerInboundNatPools\":[\r\n                {\r\n                  \"id\":\"\"\r\n                }\r\n              ],\r\n              \"id\":\"\"\r\n            }\r\n          ],\r\n          \"id\":\"\"\r\n        }\r\n      ]\r\n    },\r\n    \"diagnosticsProfile\":{\r\n      \"bootDiagnostics\":{\r\n        \"enabled\":null,\r\n        \"storageUri\":\"\"\r\n      }\r\n    },\r\n    \"extensionProfile\":{\r\n      \"extensions\":[\r\n        {\r\n          \"name\":\"\",\r\n          \"forceUpdateTag\":\"\",\r\n          \"publisher\":\"\",\r\n          \"type\":\"\",\r\n          \"typeHandlerVersion\":\"\",\r\n          \"autoUpgradeMinorVersion\":null,\r\n          \"settings\":{\r\n          },\r\n          \"protectedSettings\":{\r\n          },\r\n          \"provisioningState\":\"\",\r\n          \"id\":null\r\n        }\r\n      ]\r\n    },\r\n    \"licenseType\":\"\"\r\n  },\r\n  \"overprovision\":null,\r\n  \"singlePlacementGroup\":null,\r\n  \"identity\":{\r\n    \"principalId\":\"\",\r\n    \"tenantId\":\"\",\r\n    \"type\":null\r\n  },\r\n  \"tags\":{\r\n  }\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters virtual-machine-scale-set-update set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--sku <sku>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--sku",
                      "description": "Set the sku value."
                    },
                    {
                      "flags": "--plan <plan>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--plan",
                      "description": "Set the plan value."
                    },
                    {
                      "flags": "--upgrade-policy <upgradePolicy>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--upgrade-policy",
                      "description": "Set the upgrade-policy value."
                    },
                    {
                      "flags": "--virtual-machine-profile <virtualMachineProfile>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--virtual-machine-profile",
                      "description": "Set the virtual-machine-profile value."
                    },
                    {
                      "flags": "--overprovision <overprovision>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--overprovision",
                      "description": "Set the overprovision value."
                    },
                    {
                      "flags": "--single-placement-group <singlePlacementGroup>",
                      "required": -26,
                      "optional": 0,
                      "bool": true,
                      "long": "--single-placement-group",
                      "description": "Set the single-placement-group value."
                    },
                    {
                      "flags": "--identity <identity>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--identity",
                      "description": "Set the identity value."
                    },
                    {
                      "flags": "--tags <tags>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--tags",
                      "description": "Set the tags value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove virtual-machine-scale-set-update in update-parameters string or files, e.g. \r\n{\r\n  \"sku\":{\r\n    \"name\":\"\",\r\n    \"tier\":\"\",\r\n    \"capacity\":null\r\n  },\r\n  \"plan\":{\r\n    \"name\":\"\",\r\n    \"publisher\":\"\",\r\n    \"product\":\"\",\r\n    \"promotionCode\":\"\"\r\n  },\r\n  \"upgradePolicy\":{\r\n    \"mode\":null,\r\n    \"rollingUpgradePolicy\":{\r\n      \"maxBatchInstancePercent\":null,\r\n      \"maxUnhealthyInstancePercent\":null,\r\n      \"maxUnhealthyUpgradedInstancePercent\":null,\r\n      \"pauseTimeBetweenBatches\":\"\"\r\n    },\r\n    \"automaticOSUpgrade\":null\r\n  },\r\n  \"virtualMachineProfile\":{\r\n    \"osProfile\":{\r\n      \"customData\":\"\",\r\n      \"windowsConfiguration\":{\r\n        \"provisionVMAgent\":null,\r\n        \"enableAutomaticUpdates\":null,\r\n        \"timeZone\":\"\",\r\n        \"additionalUnattendContent\":[\r\n          {\r\n            \"passName\":null,\r\n            \"componentName\":null,\r\n            \"settingName\":null,\r\n            \"content\":\"\"\r\n          }\r\n        ],\r\n        \"winRM\":{\r\n          \"listeners\":[\r\n            {\r\n              \"protocol\":null,\r\n              \"certificateUrl\":\"\"\r\n            }\r\n          ]\r\n        }\r\n      },\r\n      \"linuxConfiguration\":{\r\n        \"disablePasswordAuthentication\":null,\r\n        \"ssh\":{\r\n          \"publicKeys\":[\r\n            {\r\n              \"path\":\"\",\r\n              \"keyData\":\"\"\r\n            }\r\n          ]\r\n        }\r\n      },\r\n      \"secrets\":[\r\n        {\r\n          \"sourceVault\":{\r\n            \"id\":\"\"\r\n          },\r\n          \"vaultCertificates\":[\r\n            {\r\n              \"certificateUrl\":\"\",\r\n              \"certificateStore\":\"\"\r\n            }\r\n          ]\r\n        }\r\n      ]\r\n    },\r\n    \"storageProfile\":{\r\n      \"imageReference\":{\r\n        \"publisher\":\"\",\r\n        \"offer\":\"\",\r\n        \"sku\":\"\",\r\n        \"version\":\"\",\r\n        \"id\":\"\"\r\n      },\r\n      \"osDisk\":{\r\n        \"caching\":null,\r\n        \"image\":{\r\n          \"uri\":\"\"\r\n        },\r\n        \"vhdContainers\":[\r\n          \"\"\r\n        ],\r\n        \"managedDisk\":{\r\n          \"storageAccountType\":null\r\n        }\r\n      },\r\n      \"dataDisks\":[\r\n        {\r\n          \"name\":\"\",\r\n          \"lun\":\"\",\r\n          \"caching\":null,\r\n          \"createOption\":\"\",\r\n          \"diskSizeGB\":null,\r\n          \"managedDisk\":{\r\n            \"storageAccountType\":null\r\n          }\r\n        }\r\n      ]\r\n    },\r\n    \"networkProfile\":{\r\n      \"networkInterfaceConfigurations\":[\r\n        {\r\n          \"name\":\"\",\r\n          \"primary\":null,\r\n          \"enableAcceleratedNetworking\":null,\r\n          \"networkSecurityGroup\":{\r\n            \"id\":\"\"\r\n          },\r\n          \"dnsSettings\":{\r\n            \"dnsServers\":[\r\n              \"\"\r\n            ]\r\n          },\r\n          \"ipConfigurations\":[\r\n            {\r\n              \"name\":\"\",\r\n              \"subnet\":{\r\n                \"id\":\"\"\r\n              },\r\n              \"primary\":null,\r\n              \"publicIPAddressConfiguration\":{\r\n                \"name\":\"\",\r\n                \"idleTimeoutInMinutes\":null,\r\n                \"dnsSettings\":{\r\n                  \"domainNameLabel\":\"\"\r\n                }\r\n              },\r\n              \"privateIPAddressVersion\":\"\",\r\n              \"applicationGatewayBackendAddressPools\":[\r\n                {\r\n                  \"id\":\"\"\r\n                }\r\n              ],\r\n              \"loadBalancerBackendAddressPools\":[\r\n                {\r\n                  \"id\":\"\"\r\n                }\r\n              ],\r\n              \"loadBalancerInboundNatPools\":[\r\n                {\r\n                  \"id\":\"\"\r\n                }\r\n              ],\r\n              \"id\":\"\"\r\n            }\r\n          ],\r\n          \"id\":\"\"\r\n        }\r\n      ]\r\n    },\r\n    \"diagnosticsProfile\":{\r\n      \"bootDiagnostics\":{\r\n        \"enabled\":null,\r\n        \"storageUri\":\"\"\r\n      }\r\n    },\r\n    \"extensionProfile\":{\r\n      \"extensions\":[\r\n        {\r\n          \"name\":\"\",\r\n          \"forceUpdateTag\":\"\",\r\n          \"publisher\":\"\",\r\n          \"type\":\"\",\r\n          \"typeHandlerVersion\":\"\",\r\n          \"autoUpgradeMinorVersion\":null,\r\n          \"settings\":{\r\n          },\r\n          \"protectedSettings\":{\r\n          },\r\n          \"provisioningState\":\"\",\r\n          \"id\":null\r\n        }\r\n      ]\r\n    },\r\n    \"licenseType\":\"\"\r\n  },\r\n  \"overprovision\":null,\r\n  \"singlePlacementGroup\":null,\r\n  \"identity\":{\r\n    \"principalId\":\"\",\r\n    \"tenantId\":\"\",\r\n    \"type\":null\r\n  },\r\n  \"tags\":{\r\n  }\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters virtual-machine-scale-set-update delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--sku",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--sku",
                      "description": "Remove the sku value."
                    },
                    {
                      "flags": "--plan",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--plan",
                      "description": "Remove the plan value."
                    },
                    {
                      "flags": "--upgrade-policy",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--upgrade-policy",
                      "description": "Remove the upgrade-policy value."
                    },
                    {
                      "flags": "--virtual-machine-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--virtual-machine-profile",
                      "description": "Remove the virtual-machine-profile value."
                    },
                    {
                      "flags": "--overprovision",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--overprovision",
                      "description": "Remove the overprovision value."
                    },
                    {
                      "flags": "--single-placement-group",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--single-placement-group",
                      "description": "Remove the single-placement-group value."
                    },
                    {
                      "flags": "--identity",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--identity",
                      "description": "Remove the identity value."
                    },
                    {
                      "flags": "--tags",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--tags",
                      "description": "Remove the tags value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "sku": {
              "name": "sku",
              "description": "Commands to configure sku of vmss in update-parameters file.",
              "fullName": "vmss update-parameters sku",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set sku in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"sku\" : {\r\n             \"name\":\"\",\r\n             \"tier\":\"\",\r\n             \"capacity\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters sku set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--tier <tier>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--tier",
                      "description": "Set the tier value."
                    },
                    {
                      "flags": "--capacity <capacity>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--capacity",
                      "description": "Set the capacity value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove sku in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"sku\" : {\r\n             \"name\":\"\",\r\n             \"tier\":\"\",\r\n             \"capacity\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters sku delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--tier",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--tier",
                      "description": "Remove the tier value."
                    },
                    {
                      "flags": "--capacity",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--capacity",
                      "description": "Remove the capacity value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "plan": {
              "name": "plan",
              "description": "Commands to configure plan of vmss in update-parameters file.",
              "fullName": "vmss update-parameters plan",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set plan in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"plan\" : {\r\n             \"name\":\"\",\r\n             \"publisher\":\"\",\r\n             \"product\":\"\",\r\n             \"promotionCode\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters plan set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--publisher <publisher>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--publisher",
                      "description": "Set the publisher value."
                    },
                    {
                      "flags": "--product <product>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--product",
                      "description": "Set the product value."
                    },
                    {
                      "flags": "--promotion-code <promotionCode>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--promotion-code",
                      "description": "Set the promotion-code value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove plan in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"plan\" : {\r\n             \"name\":\"\",\r\n             \"publisher\":\"\",\r\n             \"product\":\"\",\r\n             \"promotionCode\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters plan delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--publisher",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--publisher",
                      "description": "Remove the publisher value."
                    },
                    {
                      "flags": "--product",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--product",
                      "description": "Remove the product value."
                    },
                    {
                      "flags": "--promotion-code",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--promotion-code",
                      "description": "Remove the promotion-code value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "upgrade-policy": {
              "name": "upgrade-policy",
              "description": "Commands to configure upgrade-policy of vmss in update-parameters file.",
              "fullName": "vmss update-parameters upgrade-policy",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set upgrade-policy in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"upgradePolicy\" : {\r\n             \"mode\":null,\r\n             \"rollingUpgradePolicy\":{\r\n               \"maxBatchInstancePercent\":null,\r\n               \"maxUnhealthyInstancePercent\":null,\r\n               \"maxUnhealthyUpgradedInstancePercent\":null,\r\n               \"pauseTimeBetweenBatches\":\"\"\r\n             },\r\n             \"automaticOSUpgrade\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters upgrade-policy set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--mode <mode>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--mode",
                      "description": "Set the mode value."
                    },
                    {
                      "flags": "--rolling-upgrade-policy <rollingUpgradePolicy>",
                      "required": -26,
                      "optional": 0,
                      "bool": true,
                      "long": "--rolling-upgrade-policy",
                      "description": "Set the rolling-upgrade-policy value."
                    },
                    {
                      "flags": "--automatic-os-upgrade <automaticOSUpgrade>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "long": "--automatic-os-upgrade",
                      "description": "Set the automatic-os-upgrade value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove upgrade-policy in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"upgradePolicy\" : {\r\n             \"mode\":null,\r\n             \"rollingUpgradePolicy\":{\r\n               \"maxBatchInstancePercent\":null,\r\n               \"maxUnhealthyInstancePercent\":null,\r\n               \"maxUnhealthyUpgradedInstancePercent\":null,\r\n               \"pauseTimeBetweenBatches\":\"\"\r\n             },\r\n             \"automaticOSUpgrade\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters upgrade-policy delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--mode",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--mode",
                      "description": "Remove the mode value."
                    },
                    {
                      "flags": "--rolling-upgrade-policy",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--rolling-upgrade-policy",
                      "description": "Remove the rolling-upgrade-policy value."
                    },
                    {
                      "flags": "--automatic-os-upgrade",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--automatic-os-upgrade",
                      "description": "Remove the automatic-os-upgrade value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "rolling-upgrade-policy": {
              "name": "rolling-upgrade-policy",
              "description": "Commands to configure rolling-upgrade-policy of vmss in update-parameters file.",
              "fullName": "vmss update-parameters rolling-upgrade-policy",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set rolling-upgrade-policy in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"rollingUpgradePolicy\" : {\r\n             \"maxBatchInstancePercent\":null,\r\n             \"maxUnhealthyInstancePercent\":null,\r\n             \"maxUnhealthyUpgradedInstancePercent\":null,\r\n             \"pauseTimeBetweenBatches\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters rolling-upgrade-policy set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--max-batch-instance-percent <maxBatchInstancePercent>",
                      "required": -30,
                      "optional": 0,
                      "bool": true,
                      "long": "--max-batch-instance-percent",
                      "description": "Set the max-batch-instance-percent value."
                    },
                    {
                      "flags": "--max-unhealthy-instance-percent <maxUnhealthyInstancePercent>",
                      "required": -34,
                      "optional": 0,
                      "bool": true,
                      "long": "--max-unhealthy-instance-percent",
                      "description": "Set the max-unhealthy-instance-percent value."
                    },
                    {
                      "flags": "--max-unhealthy-upgraded-instance-percent <maxUnhealthyUpgradedInstancePercent>",
                      "required": -43,
                      "optional": 0,
                      "bool": true,
                      "long": "--max-unhealthy-upgraded-instance-percent",
                      "description": "Set the max-unhealthy-upgraded-instance-percent value."
                    },
                    {
                      "flags": "--pause-time-between-batches <pauseTimeBetweenBatches>",
                      "required": -30,
                      "optional": 0,
                      "bool": true,
                      "long": "--pause-time-between-batches",
                      "description": "Set the pause-time-between-batches value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove rolling-upgrade-policy in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"rollingUpgradePolicy\" : {\r\n             \"maxBatchInstancePercent\":null,\r\n             \"maxUnhealthyInstancePercent\":null,\r\n             \"maxUnhealthyUpgradedInstancePercent\":null,\r\n             \"pauseTimeBetweenBatches\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters rolling-upgrade-policy delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--max-batch-instance-percent",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--max-batch-instance-percent",
                      "description": "Remove the max-batch-instance-percent value."
                    },
                    {
                      "flags": "--max-unhealthy-instance-percent",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--max-unhealthy-instance-percent",
                      "description": "Remove the max-unhealthy-instance-percent value."
                    },
                    {
                      "flags": "--max-unhealthy-upgraded-instance-percent",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--max-unhealthy-upgraded-instance-percent",
                      "description": "Remove the max-unhealthy-upgraded-instance-percent value."
                    },
                    {
                      "flags": "--pause-time-between-batches",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--pause-time-between-batches",
                      "description": "Remove the pause-time-between-batches value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "virtual-machine-profile": {
              "name": "virtual-machine-profile",
              "description": "Commands to configure virtual-machine-profile of vmss in update-parameters file.",
              "fullName": "vmss update-parameters virtual-machine-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set virtual-machine-profile in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"virtualMachineProfile\" : {\r\n             \"osProfile\":{\r\n               \"customData\":\"\",\r\n               \"windowsConfiguration\":{\r\n                 \"provisionVMAgent\":null,\r\n                 \"enableAutomaticUpdates\":null,\r\n                 \"timeZone\":\"\",\r\n                 \"additionalUnattendContent\":[\r\n                   {\r\n                     \"passName\":null,\r\n                     \"componentName\":null,\r\n                     \"settingName\":null,\r\n                     \"content\":\"\"\r\n                   }\r\n                 ],\r\n                 \"winRM\":{\r\n                   \"listeners\":[\r\n                     {\r\n                       \"protocol\":null,\r\n                       \"certificateUrl\":\"\"\r\n                     }\r\n                   ]\r\n                 }\r\n               },\r\n               \"linuxConfiguration\":{\r\n                 \"disablePasswordAuthentication\":null,\r\n                 \"ssh\":{\r\n                   \"publicKeys\":[\r\n                     {\r\n                       \"path\":\"\",\r\n                       \"keyData\":\"\"\r\n                     }\r\n                   ]\r\n                 }\r\n               },\r\n               \"secrets\":[\r\n                 {\r\n                   \"sourceVault\":{\r\n                     \"id\":\"\"\r\n                   },\r\n                   \"vaultCertificates\":[\r\n                     {\r\n                       \"certificateUrl\":\"\",\r\n                       \"certificateStore\":\"\"\r\n                     }\r\n                   ]\r\n                 }\r\n               ]\r\n             },\r\n             \"storageProfile\":{\r\n               \"imageReference\":{\r\n                 \"publisher\":\"\",\r\n                 \"offer\":\"\",\r\n                 \"sku\":\"\",\r\n                 \"version\":\"\",\r\n                 \"id\":\"\"\r\n               },\r\n               \"osDisk\":{\r\n                 \"caching\":null,\r\n                 \"image\":{\r\n                   \"uri\":\"\"\r\n                 },\r\n                 \"vhdContainers\":[\r\n                   \"\"\r\n                 ],\r\n                 \"managedDisk\":{\r\n                   \"storageAccountType\":null\r\n                 }\r\n               },\r\n               \"dataDisks\":[\r\n                 {\r\n                   \"name\":\"\",\r\n                   \"lun\":\"\",\r\n                   \"caching\":null,\r\n                   \"createOption\":\"\",\r\n                   \"diskSizeGB\":null,\r\n                   \"managedDisk\":{\r\n                     \"storageAccountType\":null\r\n                   }\r\n                 }\r\n               ]\r\n             },\r\n             \"networkProfile\":{\r\n               \"networkInterfaceConfigurations\":[\r\n                 {\r\n                   \"name\":\"\",\r\n                   \"primary\":null,\r\n                   \"enableAcceleratedNetworking\":null,\r\n                   \"networkSecurityGroup\":{\r\n                     \"id\":\"\"\r\n                   },\r\n                   \"dnsSettings\":{\r\n                     \"dnsServers\":[\r\n                       \"\"\r\n                     ]\r\n                   },\r\n                   \"ipConfigurations\":[\r\n                     {\r\n                       \"name\":\"\",\r\n                       \"subnet\":{\r\n                         \"id\":\"\"\r\n                       },\r\n                       \"primary\":null,\r\n                       \"publicIPAddressConfiguration\":{\r\n                         \"name\":\"\",\r\n                         \"idleTimeoutInMinutes\":null,\r\n                         \"dnsSettings\":{\r\n                           \"domainNameLabel\":\"\"\r\n                         }\r\n                       },\r\n                       \"privateIPAddressVersion\":\"\",\r\n                       \"applicationGatewayBackendAddressPools\":[\r\n                         {\r\n                           \"id\":\"\"\r\n                         }\r\n                       ],\r\n                       \"loadBalancerBackendAddressPools\":[\r\n                         {\r\n                           \"id\":\"\"\r\n                         }\r\n                       ],\r\n                       \"loadBalancerInboundNatPools\":[\r\n                         {\r\n                           \"id\":\"\"\r\n                         }\r\n                       ],\r\n                       \"id\":\"\"\r\n                     }\r\n                   ],\r\n                   \"id\":\"\"\r\n                 }\r\n               ]\r\n             },\r\n             \"diagnosticsProfile\":{\r\n               \"bootDiagnostics\":{\r\n                 \"enabled\":null,\r\n                 \"storageUri\":\"\"\r\n               }\r\n             },\r\n             \"extensionProfile\":{\r\n               \"extensions\":[\r\n                 {\r\n                   \"name\":\"\",\r\n                   \"forceUpdateTag\":\"\",\r\n                   \"publisher\":\"\",\r\n                   \"type\":\"\",\r\n                   \"typeHandlerVersion\":\"\",\r\n                   \"autoUpgradeMinorVersion\":null,\r\n                   \"settings\":{\r\n                   },\r\n                   \"protectedSettings\":{\r\n                   },\r\n                   \"provisioningState\":\"\",\r\n                   \"id\":null\r\n                 }\r\n               ]\r\n             },\r\n             \"licenseType\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters virtual-machine-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--os-profile <osProfile>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-profile",
                      "description": "Set the os-profile value."
                    },
                    {
                      "flags": "--storage-profile <storageProfile>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-profile",
                      "description": "Set the storage-profile value."
                    },
                    {
                      "flags": "--network-profile <networkProfile>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-profile",
                      "description": "Set the network-profile value."
                    },
                    {
                      "flags": "--diagnostics-profile <diagnosticsProfile>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "long": "--diagnostics-profile",
                      "description": "Set the diagnostics-profile value."
                    },
                    {
                      "flags": "--extension-profile <extensionProfile>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "long": "--extension-profile",
                      "description": "Set the extension-profile value."
                    },
                    {
                      "flags": "--license-type <licenseType>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--license-type",
                      "description": "Set the license-type value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove virtual-machine-profile in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"virtualMachineProfile\" : {\r\n             \"osProfile\":{\r\n               \"customData\":\"\",\r\n               \"windowsConfiguration\":{\r\n                 \"provisionVMAgent\":null,\r\n                 \"enableAutomaticUpdates\":null,\r\n                 \"timeZone\":\"\",\r\n                 \"additionalUnattendContent\":[\r\n                   {\r\n                     \"passName\":null,\r\n                     \"componentName\":null,\r\n                     \"settingName\":null,\r\n                     \"content\":\"\"\r\n                   }\r\n                 ],\r\n                 \"winRM\":{\r\n                   \"listeners\":[\r\n                     {\r\n                       \"protocol\":null,\r\n                       \"certificateUrl\":\"\"\r\n                     }\r\n                   ]\r\n                 }\r\n               },\r\n               \"linuxConfiguration\":{\r\n                 \"disablePasswordAuthentication\":null,\r\n                 \"ssh\":{\r\n                   \"publicKeys\":[\r\n                     {\r\n                       \"path\":\"\",\r\n                       \"keyData\":\"\"\r\n                     }\r\n                   ]\r\n                 }\r\n               },\r\n               \"secrets\":[\r\n                 {\r\n                   \"sourceVault\":{\r\n                     \"id\":\"\"\r\n                   },\r\n                   \"vaultCertificates\":[\r\n                     {\r\n                       \"certificateUrl\":\"\",\r\n                       \"certificateStore\":\"\"\r\n                     }\r\n                   ]\r\n                 }\r\n               ]\r\n             },\r\n             \"storageProfile\":{\r\n               \"imageReference\":{\r\n                 \"publisher\":\"\",\r\n                 \"offer\":\"\",\r\n                 \"sku\":\"\",\r\n                 \"version\":\"\",\r\n                 \"id\":\"\"\r\n               },\r\n               \"osDisk\":{\r\n                 \"caching\":null,\r\n                 \"image\":{\r\n                   \"uri\":\"\"\r\n                 },\r\n                 \"vhdContainers\":[\r\n                   \"\"\r\n                 ],\r\n                 \"managedDisk\":{\r\n                   \"storageAccountType\":null\r\n                 }\r\n               },\r\n               \"dataDisks\":[\r\n                 {\r\n                   \"name\":\"\",\r\n                   \"lun\":\"\",\r\n                   \"caching\":null,\r\n                   \"createOption\":\"\",\r\n                   \"diskSizeGB\":null,\r\n                   \"managedDisk\":{\r\n                     \"storageAccountType\":null\r\n                   }\r\n                 }\r\n               ]\r\n             },\r\n             \"networkProfile\":{\r\n               \"networkInterfaceConfigurations\":[\r\n                 {\r\n                   \"name\":\"\",\r\n                   \"primary\":null,\r\n                   \"enableAcceleratedNetworking\":null,\r\n                   \"networkSecurityGroup\":{\r\n                     \"id\":\"\"\r\n                   },\r\n                   \"dnsSettings\":{\r\n                     \"dnsServers\":[\r\n                       \"\"\r\n                     ]\r\n                   },\r\n                   \"ipConfigurations\":[\r\n                     {\r\n                       \"name\":\"\",\r\n                       \"subnet\":{\r\n                         \"id\":\"\"\r\n                       },\r\n                       \"primary\":null,\r\n                       \"publicIPAddressConfiguration\":{\r\n                         \"name\":\"\",\r\n                         \"idleTimeoutInMinutes\":null,\r\n                         \"dnsSettings\":{\r\n                           \"domainNameLabel\":\"\"\r\n                         }\r\n                       },\r\n                       \"privateIPAddressVersion\":\"\",\r\n                       \"applicationGatewayBackendAddressPools\":[\r\n                         {\r\n                           \"id\":\"\"\r\n                         }\r\n                       ],\r\n                       \"loadBalancerBackendAddressPools\":[\r\n                         {\r\n                           \"id\":\"\"\r\n                         }\r\n                       ],\r\n                       \"loadBalancerInboundNatPools\":[\r\n                         {\r\n                           \"id\":\"\"\r\n                         }\r\n                       ],\r\n                       \"id\":\"\"\r\n                     }\r\n                   ],\r\n                   \"id\":\"\"\r\n                 }\r\n               ]\r\n             },\r\n             \"diagnosticsProfile\":{\r\n               \"bootDiagnostics\":{\r\n                 \"enabled\":null,\r\n                 \"storageUri\":\"\"\r\n               }\r\n             },\r\n             \"extensionProfile\":{\r\n               \"extensions\":[\r\n                 {\r\n                   \"name\":\"\",\r\n                   \"forceUpdateTag\":\"\",\r\n                   \"publisher\":\"\",\r\n                   \"type\":\"\",\r\n                   \"typeHandlerVersion\":\"\",\r\n                   \"autoUpgradeMinorVersion\":null,\r\n                   \"settings\":{\r\n                   },\r\n                   \"protectedSettings\":{\r\n                   },\r\n                   \"provisioningState\":\"\",\r\n                   \"id\":null\r\n                 }\r\n               ]\r\n             },\r\n             \"licenseType\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters virtual-machine-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--os-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-profile",
                      "description": "Remove the os-profile value."
                    },
                    {
                      "flags": "--storage-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-profile",
                      "description": "Remove the storage-profile value."
                    },
                    {
                      "flags": "--network-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-profile",
                      "description": "Remove the network-profile value."
                    },
                    {
                      "flags": "--diagnostics-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--diagnostics-profile",
                      "description": "Remove the diagnostics-profile value."
                    },
                    {
                      "flags": "--extension-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--extension-profile",
                      "description": "Remove the extension-profile value."
                    },
                    {
                      "flags": "--license-type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--license-type",
                      "description": "Remove the license-type value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "os-profile": {
              "name": "os-profile",
              "description": "Commands to configure os-profile of vmss in update-parameters file.",
              "fullName": "vmss update-parameters os-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set os-profile in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"osProfile\" : {\r\n             \"customData\":\"\",\r\n             \"windowsConfiguration\":{\r\n               \"provisionVMAgent\":null,\r\n               \"enableAutomaticUpdates\":null,\r\n               \"timeZone\":\"\",\r\n               \"additionalUnattendContent\":[\r\n                 {\r\n                   \"passName\":null,\r\n                   \"componentName\":null,\r\n                   \"settingName\":null,\r\n                   \"content\":\"\"\r\n                 }\r\n               ],\r\n               \"winRM\":{\r\n                 \"listeners\":[\r\n                   {\r\n                     \"protocol\":null,\r\n                     \"certificateUrl\":\"\"\r\n                   }\r\n                 ]\r\n               }\r\n             },\r\n             \"linuxConfiguration\":{\r\n               \"disablePasswordAuthentication\":null,\r\n               \"ssh\":{\r\n                 \"publicKeys\":[\r\n                   {\r\n                     \"path\":\"\",\r\n                     \"keyData\":\"\"\r\n                   }\r\n                 ]\r\n               }\r\n             },\r\n             \"secrets\":[\r\n               {\r\n                 \"sourceVault\":{\r\n                   \"id\":\"\"\r\n                 },\r\n                 \"vaultCertificates\":[\r\n                   {\r\n                     \"certificateUrl\":\"\",\r\n                     \"certificateStore\":\"\"\r\n                   }\r\n                 ]\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters os-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--custom-data <customData>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--custom-data",
                      "description": "Set the custom-data value."
                    },
                    {
                      "flags": "--windows-configuration <windowsConfiguration>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "long": "--windows-configuration",
                      "description": "Set the windows-configuration value."
                    },
                    {
                      "flags": "--linux-configuration <linuxConfiguration>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "long": "--linux-configuration",
                      "description": "Set the linux-configuration value."
                    },
                    {
                      "flags": "--secrets <secrets>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--secrets",
                      "description": "Set the secrets value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove os-profile in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"osProfile\" : {\r\n             \"customData\":\"\",\r\n             \"windowsConfiguration\":{\r\n               \"provisionVMAgent\":null,\r\n               \"enableAutomaticUpdates\":null,\r\n               \"timeZone\":\"\",\r\n               \"additionalUnattendContent\":[\r\n                 {\r\n                   \"passName\":null,\r\n                   \"componentName\":null,\r\n                   \"settingName\":null,\r\n                   \"content\":\"\"\r\n                 }\r\n               ],\r\n               \"winRM\":{\r\n                 \"listeners\":[\r\n                   {\r\n                     \"protocol\":null,\r\n                     \"certificateUrl\":\"\"\r\n                   }\r\n                 ]\r\n               }\r\n             },\r\n             \"linuxConfiguration\":{\r\n               \"disablePasswordAuthentication\":null,\r\n               \"ssh\":{\r\n                 \"publicKeys\":[\r\n                   {\r\n                     \"path\":\"\",\r\n                     \"keyData\":\"\"\r\n                   }\r\n                 ]\r\n               }\r\n             },\r\n             \"secrets\":[\r\n               {\r\n                 \"sourceVault\":{\r\n                   \"id\":\"\"\r\n                 },\r\n                 \"vaultCertificates\":[\r\n                   {\r\n                     \"certificateUrl\":\"\",\r\n                     \"certificateStore\":\"\"\r\n                   }\r\n                 ]\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters os-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--custom-data",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--custom-data",
                      "description": "Remove the custom-data value."
                    },
                    {
                      "flags": "--windows-configuration",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--windows-configuration",
                      "description": "Remove the windows-configuration value."
                    },
                    {
                      "flags": "--linux-configuration",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--linux-configuration",
                      "description": "Remove the linux-configuration value."
                    },
                    {
                      "flags": "--secrets",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--secrets",
                      "description": "Remove the secrets value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "windows-configuration": {
              "name": "windows-configuration",
              "description": "Commands to configure windows-configuration of vmss in update-parameters file.",
              "fullName": "vmss update-parameters windows-configuration",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set windows-configuration in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"windowsConfiguration\" : {\r\n             \"provisionVMAgent\":null,\r\n             \"enableAutomaticUpdates\":null,\r\n             \"timeZone\":\"\",\r\n             \"additionalUnattendContent\":[\r\n               {\r\n                 \"passName\":null,\r\n                 \"componentName\":null,\r\n                 \"settingName\":null,\r\n                 \"content\":\"\"\r\n               }\r\n             ],\r\n             \"winRM\":{\r\n               \"listeners\":[\r\n                 {\r\n                   \"protocol\":null,\r\n                   \"certificateUrl\":\"\"\r\n                 }\r\n               ]\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters windows-configuration set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--provision-vm-agent <provisionVMAgent>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--provision-vm-agent",
                      "description": "Set the provision-vm-agent value."
                    },
                    {
                      "flags": "--enable-automatic-updates <enableAutomaticUpdates>",
                      "required": -28,
                      "optional": 0,
                      "bool": true,
                      "long": "--enable-automatic-updates",
                      "description": "Set the enable-automatic-updates value."
                    },
                    {
                      "flags": "--time-zone <timeZone>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--time-zone",
                      "description": "Set the time-zone value."
                    },
                    {
                      "flags": "--additional-unattend-content <additionalUnattendContent>",
                      "required": -31,
                      "optional": 0,
                      "bool": true,
                      "long": "--additional-unattend-content",
                      "description": "Set the additional-unattend-content value."
                    },
                    {
                      "flags": "--win-rm <winRM>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--win-rm",
                      "description": "Set the win-rm value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove windows-configuration in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"windowsConfiguration\" : {\r\n             \"provisionVMAgent\":null,\r\n             \"enableAutomaticUpdates\":null,\r\n             \"timeZone\":\"\",\r\n             \"additionalUnattendContent\":[\r\n               {\r\n                 \"passName\":null,\r\n                 \"componentName\":null,\r\n                 \"settingName\":null,\r\n                 \"content\":\"\"\r\n               }\r\n             ],\r\n             \"winRM\":{\r\n               \"listeners\":[\r\n                 {\r\n                   \"protocol\":null,\r\n                   \"certificateUrl\":\"\"\r\n                 }\r\n               ]\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters windows-configuration delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--provision-vm-agent",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--provision-vm-agent",
                      "description": "Remove the provision-vm-agent value."
                    },
                    {
                      "flags": "--enable-automatic-updates",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--enable-automatic-updates",
                      "description": "Remove the enable-automatic-updates value."
                    },
                    {
                      "flags": "--time-zone",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--time-zone",
                      "description": "Remove the time-zone value."
                    },
                    {
                      "flags": "--additional-unattend-content",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--additional-unattend-content",
                      "description": "Remove the additional-unattend-content value."
                    },
                    {
                      "flags": "--win-rm",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--win-rm",
                      "description": "Remove the win-rm value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "additional-unattend-content": {
              "name": "additional-unattend-content",
              "description": "Commands to configure additional-unattend-content of vmss in update-parameters file.",
              "fullName": "vmss update-parameters additional-unattend-content",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set additional-unattend-content in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"additionalUnattendContent\" : {\r\n             \"passName\":null,\r\n             \"componentName\":null,\r\n             \"settingName\":null,\r\n             \"content\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters additional-unattend-content set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--pass-name <passName>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--pass-name",
                      "description": "Set the pass-name value."
                    },
                    {
                      "flags": "--component-name <componentName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--component-name",
                      "description": "Set the component-name value."
                    },
                    {
                      "flags": "--setting-name <settingName>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--setting-name",
                      "description": "Set the setting-name value."
                    },
                    {
                      "flags": "--content <content>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--content",
                      "description": "Set the content value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove additional-unattend-content in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"additionalUnattendContent\" : {\r\n             \"passName\":null,\r\n             \"componentName\":null,\r\n             \"settingName\":null,\r\n             \"content\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters additional-unattend-content delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--pass-name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--pass-name",
                      "description": "Remove the pass-name value."
                    },
                    {
                      "flags": "--component-name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--component-name",
                      "description": "Remove the component-name value."
                    },
                    {
                      "flags": "--setting-name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--setting-name",
                      "description": "Remove the setting-name value."
                    },
                    {
                      "flags": "--content",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--content",
                      "description": "Remove the content value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "win-rm": {
              "name": "win-rm",
              "description": "Commands to configure win-rm of vmss in update-parameters file.",
              "fullName": "vmss update-parameters win-rm",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set win-rm in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"winRM\" : {\r\n             \"listeners\":[\r\n               {\r\n                 \"protocol\":null,\r\n                 \"certificateUrl\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters win-rm set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--listeners <listeners>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--listeners",
                      "description": "Set the listeners value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove win-rm in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"winRM\" : {\r\n             \"listeners\":[\r\n               {\r\n                 \"protocol\":null,\r\n                 \"certificateUrl\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters win-rm delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--listeners",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--listeners",
                      "description": "Remove the listeners value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "listeners": {
              "name": "listeners",
              "description": "Commands to configure listeners of vmss in update-parameters file.",
              "fullName": "vmss update-parameters listeners",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set listeners in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"listeners\" : {\r\n             \"protocol\":null,\r\n             \"certificateUrl\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters listeners set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--protocol <protocol>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--protocol",
                      "description": "Set the protocol value."
                    },
                    {
                      "flags": "--certificate-url <certificateUrl>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--certificate-url",
                      "description": "Set the certificate-url value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove listeners in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"listeners\" : {\r\n             \"protocol\":null,\r\n             \"certificateUrl\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters listeners delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--protocol",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--protocol",
                      "description": "Remove the protocol value."
                    },
                    {
                      "flags": "--certificate-url",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--certificate-url",
                      "description": "Remove the certificate-url value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "linux-configuration": {
              "name": "linux-configuration",
              "description": "Commands to configure linux-configuration of vmss in update-parameters file.",
              "fullName": "vmss update-parameters linux-configuration",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set linux-configuration in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"linuxConfiguration\" : {\r\n             \"disablePasswordAuthentication\":null,\r\n             \"ssh\":{\r\n               \"publicKeys\":[\r\n                 {\r\n                   \"path\":\"\",\r\n                   \"keyData\":\"\"\r\n                 }\r\n               ]\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters linux-configuration set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--disable-password-authentication <disablePasswordAuthentication>",
                      "required": -35,
                      "optional": 0,
                      "bool": true,
                      "long": "--disable-password-authentication",
                      "description": "Set the disable-password-authentication value."
                    },
                    {
                      "flags": "--ssh <ssh>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--ssh",
                      "description": "Set the ssh value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove linux-configuration in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"linuxConfiguration\" : {\r\n             \"disablePasswordAuthentication\":null,\r\n             \"ssh\":{\r\n               \"publicKeys\":[\r\n                 {\r\n                   \"path\":\"\",\r\n                   \"keyData\":\"\"\r\n                 }\r\n               ]\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters linux-configuration delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--disable-password-authentication",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--disable-password-authentication",
                      "description": "Remove the disable-password-authentication value."
                    },
                    {
                      "flags": "--ssh",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--ssh",
                      "description": "Remove the ssh value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "ssh": {
              "name": "ssh",
              "description": "Commands to configure ssh of vmss in update-parameters file.",
              "fullName": "vmss update-parameters ssh",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set ssh in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"ssh\" : {\r\n             \"publicKeys\":[\r\n               {\r\n                 \"path\":\"\",\r\n                 \"keyData\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters ssh set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--public-keys <publicKeys>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--public-keys",
                      "description": "Set the public-keys value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove ssh in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"ssh\" : {\r\n             \"publicKeys\":[\r\n               {\r\n                 \"path\":\"\",\r\n                 \"keyData\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters ssh delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--public-keys",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--public-keys",
                      "description": "Remove the public-keys value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "public-keys": {
              "name": "public-keys",
              "description": "Commands to configure public-keys of vmss in update-parameters file.",
              "fullName": "vmss update-parameters public-keys",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set public-keys in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"publicKeys\" : {\r\n             \"path\":\"\",\r\n             \"keyData\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters public-keys set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--path <path>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--path",
                      "description": "Set the path value."
                    },
                    {
                      "flags": "--key-data <keyData>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-data",
                      "description": "Set the key-data value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove public-keys in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"publicKeys\" : {\r\n             \"path\":\"\",\r\n             \"keyData\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters public-keys delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--path",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--path",
                      "description": "Remove the path value."
                    },
                    {
                      "flags": "--key-data",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-data",
                      "description": "Remove the key-data value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "secrets": {
              "name": "secrets",
              "description": "Commands to configure secrets of vmss in update-parameters file.",
              "fullName": "vmss update-parameters secrets",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set secrets in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"secrets\" : {\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"vaultCertificates\":[\r\n               {\r\n                 \"certificateUrl\":\"\",\r\n                 \"certificateStore\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters secrets set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--source-vault <sourceVault>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Set the source-vault value."
                    },
                    {
                      "flags": "--vault-certificates <vaultCertificates>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--vault-certificates",
                      "description": "Set the vault-certificates value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove secrets in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"secrets\" : {\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"vaultCertificates\":[\r\n               {\r\n                 \"certificateUrl\":\"\",\r\n                 \"certificateStore\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters secrets delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--source-vault",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Remove the source-vault value."
                    },
                    {
                      "flags": "--vault-certificates",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--vault-certificates",
                      "description": "Remove the vault-certificates value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "source-vault": {
              "name": "source-vault",
              "description": "Commands to configure source-vault of vmss in update-parameters file.",
              "fullName": "vmss update-parameters source-vault",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set source-vault in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters source-vault set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--secrets-index <secrets-index>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--secrets-index",
                      "description": "Indexer: secrets-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove source-vault in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters source-vault delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--secrets-index <secrets-index>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--secrets-index",
                      "description": "Indexer: secrets-index."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "vault-certificates": {
              "name": "vault-certificates",
              "description": "Commands to configure vault-certificates of vmss in update-parameters file.",
              "fullName": "vmss update-parameters vault-certificates",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set vault-certificates in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"vaultCertificates\" : {\r\n             \"certificateUrl\":\"\",\r\n             \"certificateStore\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters vault-certificates set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--secrets-index <secrets-index>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--secrets-index",
                      "description": "Indexer: secrets-index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--certificate-url <certificateUrl>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--certificate-url",
                      "description": "Set the certificate-url value."
                    },
                    {
                      "flags": "--certificate-store <certificateStore>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "long": "--certificate-store",
                      "description": "Set the certificate-store value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove vault-certificates in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"vaultCertificates\" : {\r\n             \"certificateUrl\":\"\",\r\n             \"certificateStore\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters vault-certificates delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--secrets-index <secrets-index>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--secrets-index",
                      "description": "Indexer: secrets-index."
                    },
                    {
                      "flags": "--certificate-url",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--certificate-url",
                      "description": "Remove the certificate-url value."
                    },
                    {
                      "flags": "--certificate-store",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--certificate-store",
                      "description": "Remove the certificate-store value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "storage-profile": {
              "name": "storage-profile",
              "description": "Commands to configure storage-profile of vmss in update-parameters file.",
              "fullName": "vmss update-parameters storage-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set storage-profile in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"storageProfile\" : {\r\n             \"imageReference\":{\r\n               \"publisher\":\"\",\r\n               \"offer\":\"\",\r\n               \"sku\":\"\",\r\n               \"version\":\"\",\r\n               \"id\":\"\"\r\n             },\r\n             \"osDisk\":{\r\n               \"caching\":null,\r\n               \"image\":{\r\n                 \"uri\":\"\"\r\n               },\r\n               \"vhdContainers\":[\r\n                 \"\"\r\n               ],\r\n               \"managedDisk\":{\r\n                 \"storageAccountType\":null\r\n               }\r\n             },\r\n             \"dataDisks\":[\r\n               {\r\n                 \"name\":\"\",\r\n                 \"lun\":\"\",\r\n                 \"caching\":null,\r\n                 \"createOption\":\"\",\r\n                 \"diskSizeGB\":null,\r\n                 \"managedDisk\":{\r\n                   \"storageAccountType\":null\r\n                 }\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters storage-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--image-reference <imageReference>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--image-reference",
                      "description": "Set the image-reference value."
                    },
                    {
                      "flags": "--os-disk <osDisk>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-disk",
                      "description": "Set the os-disk value."
                    },
                    {
                      "flags": "--data-disks <dataDisks>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--data-disks",
                      "description": "Set the data-disks value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove storage-profile in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"storageProfile\" : {\r\n             \"imageReference\":{\r\n               \"publisher\":\"\",\r\n               \"offer\":\"\",\r\n               \"sku\":\"\",\r\n               \"version\":\"\",\r\n               \"id\":\"\"\r\n             },\r\n             \"osDisk\":{\r\n               \"caching\":null,\r\n               \"image\":{\r\n                 \"uri\":\"\"\r\n               },\r\n               \"vhdContainers\":[\r\n                 \"\"\r\n               ],\r\n               \"managedDisk\":{\r\n                 \"storageAccountType\":null\r\n               }\r\n             },\r\n             \"dataDisks\":[\r\n               {\r\n                 \"name\":\"\",\r\n                 \"lun\":\"\",\r\n                 \"caching\":null,\r\n                 \"createOption\":\"\",\r\n                 \"diskSizeGB\":null,\r\n                 \"managedDisk\":{\r\n                   \"storageAccountType\":null\r\n                 }\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters storage-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--image-reference",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--image-reference",
                      "description": "Remove the image-reference value."
                    },
                    {
                      "flags": "--os-disk",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-disk",
                      "description": "Remove the os-disk value."
                    },
                    {
                      "flags": "--data-disks",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--data-disks",
                      "description": "Remove the data-disks value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "image-reference": {
              "name": "image-reference",
              "description": "Commands to configure image-reference of vmss in update-parameters file.",
              "fullName": "vmss update-parameters image-reference",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set image-reference in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"imageReference\" : {\r\n             \"publisher\":\"\",\r\n             \"offer\":\"\",\r\n             \"sku\":\"\",\r\n             \"version\":\"\",\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters image-reference set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--publisher <publisher>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--publisher",
                      "description": "Set the publisher value."
                    },
                    {
                      "flags": "--offer <offer>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--offer",
                      "description": "Set the offer value."
                    },
                    {
                      "flags": "--sku <sku>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--sku",
                      "description": "Set the sku value."
                    },
                    {
                      "flags": "--version <version>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--version",
                      "description": "Set the version value."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove image-reference in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"imageReference\" : {\r\n             \"publisher\":\"\",\r\n             \"offer\":\"\",\r\n             \"sku\":\"\",\r\n             \"version\":\"\",\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters image-reference delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--publisher",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--publisher",
                      "description": "Remove the publisher value."
                    },
                    {
                      "flags": "--offer",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--offer",
                      "description": "Remove the offer value."
                    },
                    {
                      "flags": "--sku",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--sku",
                      "description": "Remove the sku value."
                    },
                    {
                      "flags": "--version",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--version",
                      "description": "Remove the version value."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "os-disk": {
              "name": "os-disk",
              "description": "Commands to configure os-disk of vmss in update-parameters file.",
              "fullName": "vmss update-parameters os-disk",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set os-disk in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"osDisk\" : {\r\n             \"caching\":null,\r\n             \"image\":{\r\n               \"uri\":\"\"\r\n             },\r\n             \"vhdContainers\":[\r\n               \"\"\r\n             ],\r\n             \"managedDisk\":{\r\n               \"storageAccountType\":null\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters os-disk set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--caching <caching>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--caching",
                      "description": "Set the caching value."
                    },
                    {
                      "flags": "--image <image>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--image",
                      "description": "Set the image value."
                    },
                    {
                      "flags": "--vhd-containers <vhdContainers>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--vhd-containers",
                      "description": "Set the vhd-containers value."
                    },
                    {
                      "flags": "--managed-disk <managedDisk>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--managed-disk",
                      "description": "Set the managed-disk value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove os-disk in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"osDisk\" : {\r\n             \"caching\":null,\r\n             \"image\":{\r\n               \"uri\":\"\"\r\n             },\r\n             \"vhdContainers\":[\r\n               \"\"\r\n             ],\r\n             \"managedDisk\":{\r\n               \"storageAccountType\":null\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters os-disk delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--caching",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--caching",
                      "description": "Remove the caching value."
                    },
                    {
                      "flags": "--image",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--image",
                      "description": "Remove the image value."
                    },
                    {
                      "flags": "--vhd-containers",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--vhd-containers",
                      "description": "Remove the vhd-containers value."
                    },
                    {
                      "flags": "--managed-disk",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--managed-disk",
                      "description": "Remove the managed-disk value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "image": {
              "name": "image",
              "description": "Commands to configure image of vmss in update-parameters file.",
              "fullName": "vmss update-parameters image",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set image in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"image\" : {\r\n             \"uri\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters image set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--uri <uri>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--uri",
                      "description": "Set the uri value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove image in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"image\" : {\r\n             \"uri\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters image delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--uri",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--uri",
                      "description": "Remove the uri value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "vhd-containers": {
              "name": "vhd-containers",
              "description": "Commands to configure vhd-containers of vmss in update-parameters file.",
              "fullName": "vmss update-parameters vhd-containers",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set vhd-containers in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"vhdContainers\" : \"\"\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters vhd-containers set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove vhd-containers in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"vhdContainers\" : \"\"\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters vhd-containers delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "managed-disk": {
              "name": "managed-disk",
              "description": "Commands to configure managed-disk of vmss in update-parameters file.",
              "fullName": "vmss update-parameters managed-disk",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set managed-disk in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"managedDisk\" : {\r\n             \"storageAccountType\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters managed-disk set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--storage-account-type <storageAccountType>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-account-type",
                      "description": "Set the storage-account-type value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove managed-disk in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"managedDisk\" : {\r\n             \"storageAccountType\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters managed-disk delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--storage-account-type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-account-type",
                      "description": "Remove the storage-account-type value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "data-disks": {
              "name": "data-disks",
              "description": "Commands to configure data-disks of vmss in update-parameters file.",
              "fullName": "vmss update-parameters data-disks",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set data-disks in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"dataDisks\" : {\r\n             \"name\":\"\",\r\n             \"lun\":\"\",\r\n             \"caching\":null,\r\n             \"createOption\":\"\",\r\n             \"diskSizeGB\":null,\r\n             \"managedDisk\":{\r\n               \"storageAccountType\":null\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters data-disks set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--lun <lun>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--lun",
                      "description": "Set the lun value."
                    },
                    {
                      "flags": "--caching <caching>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--caching",
                      "description": "Set the caching value."
                    },
                    {
                      "flags": "--create-option <createOption>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--create-option",
                      "description": "Set the create-option value."
                    },
                    {
                      "flags": "--disk-size-g-b <diskSizeGB>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-size-g-b",
                      "description": "Set the disk-size-g-b value."
                    },
                    {
                      "flags": "--managed-disk <managedDisk>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--managed-disk",
                      "description": "Set the managed-disk value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove data-disks in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"dataDisks\" : {\r\n             \"name\":\"\",\r\n             \"lun\":\"\",\r\n             \"caching\":null,\r\n             \"createOption\":\"\",\r\n             \"diskSizeGB\":null,\r\n             \"managedDisk\":{\r\n               \"storageAccountType\":null\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters data-disks delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--lun",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--lun",
                      "description": "Remove the lun value."
                    },
                    {
                      "flags": "--caching",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--caching",
                      "description": "Remove the caching value."
                    },
                    {
                      "flags": "--create-option",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--create-option",
                      "description": "Remove the create-option value."
                    },
                    {
                      "flags": "--disk-size-g-b",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-size-g-b",
                      "description": "Remove the disk-size-g-b value."
                    },
                    {
                      "flags": "--managed-disk",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--managed-disk",
                      "description": "Remove the managed-disk value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "data-disks-managed-disk": {
              "name": "data-disks-managed-disk",
              "description": "Commands to configure data-disks-managed-disk of vmss in update-parameters file.",
              "fullName": "vmss update-parameters data-disks-managed-disk",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set data-disks-managed-disk in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"managedDisk\" : {\r\n             \"storageAccountType\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters data-disks-managed-disk set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--data-disks-index <data-disks-index>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--data-disks-index",
                      "description": "Indexer: data-disks-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--storage-account-type <storageAccountType>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-account-type",
                      "description": "Set the storage-account-type value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove data-disks-managed-disk in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"managedDisk\" : {\r\n             \"storageAccountType\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters data-disks-managed-disk delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--data-disks-index <data-disks-index>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--data-disks-index",
                      "description": "Indexer: data-disks-index."
                    },
                    {
                      "flags": "--storage-account-type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-account-type",
                      "description": "Remove the storage-account-type value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "network-profile": {
              "name": "network-profile",
              "description": "Commands to configure network-profile of vmss in update-parameters file.",
              "fullName": "vmss update-parameters network-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set network-profile in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"networkProfile\" : {\r\n             \"networkInterfaceConfigurations\":[\r\n               {\r\n                 \"name\":\"\",\r\n                 \"primary\":null,\r\n                 \"enableAcceleratedNetworking\":null,\r\n                 \"networkSecurityGroup\":{\r\n                   \"id\":\"\"\r\n                 },\r\n                 \"dnsSettings\":{\r\n                   \"dnsServers\":[\r\n                     \"\"\r\n                   ]\r\n                 },\r\n                 \"ipConfigurations\":[\r\n                   {\r\n                     \"name\":\"\",\r\n                     \"subnet\":{\r\n                       \"id\":\"\"\r\n                     },\r\n                     \"primary\":null,\r\n                     \"publicIPAddressConfiguration\":{\r\n                       \"name\":\"\",\r\n                       \"idleTimeoutInMinutes\":null,\r\n                       \"dnsSettings\":{\r\n                         \"domainNameLabel\":\"\"\r\n                       }\r\n                     },\r\n                     \"privateIPAddressVersion\":\"\",\r\n                     \"applicationGatewayBackendAddressPools\":[\r\n                       {\r\n                         \"id\":\"\"\r\n                       }\r\n                     ],\r\n                     \"loadBalancerBackendAddressPools\":[\r\n                       {\r\n                         \"id\":\"\"\r\n                       }\r\n                     ],\r\n                     \"loadBalancerInboundNatPools\":[\r\n                       {\r\n                         \"id\":\"\"\r\n                       }\r\n                     ],\r\n                     \"id\":\"\"\r\n                   }\r\n                 ],\r\n                 \"id\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters network-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--network-interface-configurations <networkInterfaceConfigurations>",
                      "required": -36,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations",
                      "description": "Set the network-interface-configurations value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove network-profile in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"networkProfile\" : {\r\n             \"networkInterfaceConfigurations\":[\r\n               {\r\n                 \"name\":\"\",\r\n                 \"primary\":null,\r\n                 \"enableAcceleratedNetworking\":null,\r\n                 \"networkSecurityGroup\":{\r\n                   \"id\":\"\"\r\n                 },\r\n                 \"dnsSettings\":{\r\n                   \"dnsServers\":[\r\n                     \"\"\r\n                   ]\r\n                 },\r\n                 \"ipConfigurations\":[\r\n                   {\r\n                     \"name\":\"\",\r\n                     \"subnet\":{\r\n                       \"id\":\"\"\r\n                     },\r\n                     \"primary\":null,\r\n                     \"publicIPAddressConfiguration\":{\r\n                       \"name\":\"\",\r\n                       \"idleTimeoutInMinutes\":null,\r\n                       \"dnsSettings\":{\r\n                         \"domainNameLabel\":\"\"\r\n                       }\r\n                     },\r\n                     \"privateIPAddressVersion\":\"\",\r\n                     \"applicationGatewayBackendAddressPools\":[\r\n                       {\r\n                         \"id\":\"\"\r\n                       }\r\n                     ],\r\n                     \"loadBalancerBackendAddressPools\":[\r\n                       {\r\n                         \"id\":\"\"\r\n                       }\r\n                     ],\r\n                     \"loadBalancerInboundNatPools\":[\r\n                       {\r\n                         \"id\":\"\"\r\n                       }\r\n                     ],\r\n                     \"id\":\"\"\r\n                   }\r\n                 ],\r\n                 \"id\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters network-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--network-interface-configurations",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations",
                      "description": "Remove the network-interface-configurations value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "network-interface-configurations": {
              "name": "network-interface-configurations",
              "description": "Commands to configure network-interface-configurations of vmss in update-parameters file.",
              "fullName": "vmss update-parameters network-interface-configurations",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set network-interface-configurations in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"networkInterfaceConfigurations\" : {\r\n             \"name\":\"\",\r\n             \"primary\":null,\r\n             \"enableAcceleratedNetworking\":null,\r\n             \"networkSecurityGroup\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"dnsSettings\":{\r\n               \"dnsServers\":[\r\n                 \"\"\r\n               ]\r\n             },\r\n             \"ipConfigurations\":[\r\n               {\r\n                 \"name\":\"\",\r\n                 \"subnet\":{\r\n                   \"id\":\"\"\r\n                 },\r\n                 \"primary\":null,\r\n                 \"publicIPAddressConfiguration\":{\r\n                   \"name\":\"\",\r\n                   \"idleTimeoutInMinutes\":null,\r\n                   \"dnsSettings\":{\r\n                     \"domainNameLabel\":\"\"\r\n                   }\r\n                 },\r\n                 \"privateIPAddressVersion\":\"\",\r\n                 \"applicationGatewayBackendAddressPools\":[\r\n                   {\r\n                     \"id\":\"\"\r\n                   }\r\n                 ],\r\n                 \"loadBalancerBackendAddressPools\":[\r\n                   {\r\n                     \"id\":\"\"\r\n                   }\r\n                 ],\r\n                 \"loadBalancerInboundNatPools\":[\r\n                   {\r\n                     \"id\":\"\"\r\n                   }\r\n                 ],\r\n                 \"id\":\"\"\r\n               }\r\n             ],\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters network-interface-configurations set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--primary <primary>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--primary",
                      "description": "Set the primary value."
                    },
                    {
                      "flags": "--enable-accelerated-networking <enableAcceleratedNetworking>",
                      "required": -33,
                      "optional": 0,
                      "bool": true,
                      "long": "--enable-accelerated-networking",
                      "description": "Set the enable-accelerated-networking value."
                    },
                    {
                      "flags": "--network-security-group <networkSecurityGroup>",
                      "required": -26,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-security-group",
                      "description": "Set the network-security-group value."
                    },
                    {
                      "flags": "--dns-settings <dnsSettings>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--dns-settings",
                      "description": "Set the dns-settings value."
                    },
                    {
                      "flags": "--ip-configurations <ipConfigurations>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations",
                      "description": "Set the ip-configurations value."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove network-interface-configurations in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"networkInterfaceConfigurations\" : {\r\n             \"name\":\"\",\r\n             \"primary\":null,\r\n             \"enableAcceleratedNetworking\":null,\r\n             \"networkSecurityGroup\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"dnsSettings\":{\r\n               \"dnsServers\":[\r\n                 \"\"\r\n               ]\r\n             },\r\n             \"ipConfigurations\":[\r\n               {\r\n                 \"name\":\"\",\r\n                 \"subnet\":{\r\n                   \"id\":\"\"\r\n                 },\r\n                 \"primary\":null,\r\n                 \"publicIPAddressConfiguration\":{\r\n                   \"name\":\"\",\r\n                   \"idleTimeoutInMinutes\":null,\r\n                   \"dnsSettings\":{\r\n                     \"domainNameLabel\":\"\"\r\n                   }\r\n                 },\r\n                 \"privateIPAddressVersion\":\"\",\r\n                 \"applicationGatewayBackendAddressPools\":[\r\n                   {\r\n                     \"id\":\"\"\r\n                   }\r\n                 ],\r\n                 \"loadBalancerBackendAddressPools\":[\r\n                   {\r\n                     \"id\":\"\"\r\n                   }\r\n                 ],\r\n                 \"loadBalancerInboundNatPools\":[\r\n                   {\r\n                     \"id\":\"\"\r\n                   }\r\n                 ],\r\n                 \"id\":\"\"\r\n               }\r\n             ],\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters network-interface-configurations delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--primary",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--primary",
                      "description": "Remove the primary value."
                    },
                    {
                      "flags": "--enable-accelerated-networking",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--enable-accelerated-networking",
                      "description": "Remove the enable-accelerated-networking value."
                    },
                    {
                      "flags": "--network-security-group",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-security-group",
                      "description": "Remove the network-security-group value."
                    },
                    {
                      "flags": "--dns-settings",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--dns-settings",
                      "description": "Remove the dns-settings value."
                    },
                    {
                      "flags": "--ip-configurations",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations",
                      "description": "Remove the ip-configurations value."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "network-security-group": {
              "name": "network-security-group",
              "description": "Commands to configure network-security-group of vmss in update-parameters file.",
              "fullName": "vmss update-parameters network-security-group",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set network-security-group in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"networkSecurityGroup\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters network-security-group set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove network-security-group in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"networkSecurityGroup\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters network-security-group delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "dns-settings": {
              "name": "dns-settings",
              "description": "Commands to configure dns-settings of vmss in update-parameters file.",
              "fullName": "vmss update-parameters dns-settings",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set dns-settings in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"dnsSettings\" : {\r\n             \"dnsServers\":[\r\n               \"\"\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters dns-settings set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--dns-servers <dnsServers>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--dns-servers",
                      "description": "Set the dns-servers value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove dns-settings in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"dnsSettings\" : {\r\n             \"dnsServers\":[\r\n               \"\"\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters dns-settings delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--dns-servers",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--dns-servers",
                      "description": "Remove the dns-servers value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "dns-servers": {
              "name": "dns-servers",
              "description": "Commands to configure dns-servers of vmss in update-parameters file.",
              "fullName": "vmss update-parameters dns-servers",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set dns-servers in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"dnsServers\" : \"\"\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters dns-servers set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove dns-servers in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"dnsServers\" : \"\"\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters dns-servers delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "ip-configurations": {
              "name": "ip-configurations",
              "description": "Commands to configure ip-configurations of vmss in update-parameters file.",
              "fullName": "vmss update-parameters ip-configurations",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set ip-configurations in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"ipConfigurations\" : {\r\n             \"name\":\"\",\r\n             \"subnet\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"primary\":null,\r\n             \"publicIPAddressConfiguration\":{\r\n               \"name\":\"\",\r\n               \"idleTimeoutInMinutes\":null,\r\n               \"dnsSettings\":{\r\n                 \"domainNameLabel\":\"\"\r\n               }\r\n             },\r\n             \"privateIPAddressVersion\":\"\",\r\n             \"applicationGatewayBackendAddressPools\":[\r\n               {\r\n                 \"id\":\"\"\r\n               }\r\n             ],\r\n             \"loadBalancerBackendAddressPools\":[\r\n               {\r\n                 \"id\":\"\"\r\n               }\r\n             ],\r\n             \"loadBalancerInboundNatPools\":[\r\n               {\r\n                 \"id\":\"\"\r\n               }\r\n             ],\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters ip-configurations set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--subnet <subnet>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--subnet",
                      "description": "Set the subnet value."
                    },
                    {
                      "flags": "--primary <primary>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--primary",
                      "description": "Set the primary value."
                    },
                    {
                      "flags": "--public-ip-address-configuration <publicIPAddressConfiguration>",
                      "required": -35,
                      "optional": 0,
                      "bool": true,
                      "long": "--public-ip-address-configuration",
                      "description": "Set the public-ip-address-configuration value."
                    },
                    {
                      "flags": "--private-ip-address-version <privateIPAddressVersion>",
                      "required": -30,
                      "optional": 0,
                      "bool": true,
                      "long": "--private-ip-address-version",
                      "description": "Set the private-ip-address-version value."
                    },
                    {
                      "flags": "--application-gateway-backend-address-pools <applicationGatewayBackendAddressPools>",
                      "required": -45,
                      "optional": 0,
                      "bool": true,
                      "long": "--application-gateway-backend-address-pools",
                      "description": "Set the application-gateway-backend-address-pools value."
                    },
                    {
                      "flags": "--load-balancer-backend-address-pools <loadBalancerBackendAddressPools>",
                      "required": -39,
                      "optional": 0,
                      "bool": true,
                      "long": "--load-balancer-backend-address-pools",
                      "description": "Set the load-balancer-backend-address-pools value."
                    },
                    {
                      "flags": "--load-balancer-inbound-nat-pools <loadBalancerInboundNatPools>",
                      "required": -35,
                      "optional": 0,
                      "bool": true,
                      "long": "--load-balancer-inbound-nat-pools",
                      "description": "Set the load-balancer-inbound-nat-pools value."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove ip-configurations in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"ipConfigurations\" : {\r\n             \"name\":\"\",\r\n             \"subnet\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"primary\":null,\r\n             \"publicIPAddressConfiguration\":{\r\n               \"name\":\"\",\r\n               \"idleTimeoutInMinutes\":null,\r\n               \"dnsSettings\":{\r\n                 \"domainNameLabel\":\"\"\r\n               }\r\n             },\r\n             \"privateIPAddressVersion\":\"\",\r\n             \"applicationGatewayBackendAddressPools\":[\r\n               {\r\n                 \"id\":\"\"\r\n               }\r\n             ],\r\n             \"loadBalancerBackendAddressPools\":[\r\n               {\r\n                 \"id\":\"\"\r\n               }\r\n             ],\r\n             \"loadBalancerInboundNatPools\":[\r\n               {\r\n                 \"id\":\"\"\r\n               }\r\n             ],\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters ip-configurations delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--subnet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--subnet",
                      "description": "Remove the subnet value."
                    },
                    {
                      "flags": "--primary",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--primary",
                      "description": "Remove the primary value."
                    },
                    {
                      "flags": "--public-ip-address-configuration",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--public-ip-address-configuration",
                      "description": "Remove the public-ip-address-configuration value."
                    },
                    {
                      "flags": "--private-ip-address-version",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--private-ip-address-version",
                      "description": "Remove the private-ip-address-version value."
                    },
                    {
                      "flags": "--application-gateway-backend-address-pools",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--application-gateway-backend-address-pools",
                      "description": "Remove the application-gateway-backend-address-pools value."
                    },
                    {
                      "flags": "--load-balancer-backend-address-pools",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--load-balancer-backend-address-pools",
                      "description": "Remove the load-balancer-backend-address-pools value."
                    },
                    {
                      "flags": "--load-balancer-inbound-nat-pools",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--load-balancer-inbound-nat-pools",
                      "description": "Remove the load-balancer-inbound-nat-pools value."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "subnet": {
              "name": "subnet",
              "description": "Commands to configure subnet of vmss in update-parameters file.",
              "fullName": "vmss update-parameters subnet",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set subnet in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"subnet\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters subnet set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove subnet in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"subnet\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters subnet delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "public-ip-address-configuration": {
              "name": "public-ip-address-configuration",
              "description": "Commands to configure public-ip-address-configuration of vmss in update-parameters file.",
              "fullName": "vmss update-parameters public-ip-address-configuration",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set public-ip-address-configuration in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"publicIPAddressConfiguration\" : {\r\n             \"name\":\"\",\r\n             \"idleTimeoutInMinutes\":null,\r\n             \"dnsSettings\":{\r\n               \"domainNameLabel\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters public-ip-address-configuration set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--idle-timeout-in-minutes <idleTimeoutInMinutes>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--idle-timeout-in-minutes",
                      "description": "Set the idle-timeout-in-minutes value."
                    },
                    {
                      "flags": "--dns-settings <dnsSettings>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--dns-settings",
                      "description": "Set the dns-settings value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove public-ip-address-configuration in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"publicIPAddressConfiguration\" : {\r\n             \"name\":\"\",\r\n             \"idleTimeoutInMinutes\":null,\r\n             \"dnsSettings\":{\r\n               \"domainNameLabel\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters public-ip-address-configuration delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--idle-timeout-in-minutes",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--idle-timeout-in-minutes",
                      "description": "Remove the idle-timeout-in-minutes value."
                    },
                    {
                      "flags": "--dns-settings",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--dns-settings",
                      "description": "Remove the dns-settings value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "public-ip-address-configuration-dns-settings": {
              "name": "public-ip-address-configuration-dns-settings",
              "description": "Commands to configure public-ip-address-configuration-dns-settings of vmss in update-parameters file.",
              "fullName": "vmss update-parameters public-ip-address-configuration-dns-settings",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set public-ip-address-configuration-dns-settings in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"dnsSettings\" : {\r\n             \"domainNameLabel\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters public-ip-address-configuration-dns-settings set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--domain-name-label <domainNameLabel>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "long": "--domain-name-label",
                      "description": "Set the domain-name-label value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove public-ip-address-configuration-dns-settings in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"dnsSettings\" : {\r\n             \"domainNameLabel\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters public-ip-address-configuration-dns-settings delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--domain-name-label",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--domain-name-label",
                      "description": "Remove the domain-name-label value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "application-gateway-backend-address-pools": {
              "name": "application-gateway-backend-address-pools",
              "description": "Commands to configure application-gateway-backend-address-pools of vmss in update-parameters file.",
              "fullName": "vmss update-parameters application-gateway-backend-address-pools",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set application-gateway-backend-address-pools in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"applicationGatewayBackendAddressPools\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters application-gateway-backend-address-pools set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove application-gateway-backend-address-pools in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"applicationGatewayBackendAddressPools\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters application-gateway-backend-address-pools delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "load-balancer-backend-address-pools": {
              "name": "load-balancer-backend-address-pools",
              "description": "Commands to configure load-balancer-backend-address-pools of vmss in update-parameters file.",
              "fullName": "vmss update-parameters load-balancer-backend-address-pools",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set load-balancer-backend-address-pools in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"loadBalancerBackendAddressPools\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters load-balancer-backend-address-pools set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove load-balancer-backend-address-pools in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"loadBalancerBackendAddressPools\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters load-balancer-backend-address-pools delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "load-balancer-inbound-nat-pools": {
              "name": "load-balancer-inbound-nat-pools",
              "description": "Commands to configure load-balancer-inbound-nat-pools of vmss in update-parameters file.",
              "fullName": "vmss update-parameters load-balancer-inbound-nat-pools",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set load-balancer-inbound-nat-pools in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"loadBalancerInboundNatPools\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters load-balancer-inbound-nat-pools set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove load-balancer-inbound-nat-pools in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"loadBalancerInboundNatPools\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters load-balancer-inbound-nat-pools delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--ip-configurations-index <ip-configurations-index>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "long": "--ip-configurations-index",
                      "description": "Indexer: ip-configurations-index."
                    },
                    {
                      "flags": "--network-interface-configurations-index <network-interface-configurations-index>",
                      "required": -42,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interface-configurations-index",
                      "description": "Indexer: network-interface-configurations-index."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "diagnostics-profile": {
              "name": "diagnostics-profile",
              "description": "Commands to configure diagnostics-profile of vmss in update-parameters file.",
              "fullName": "vmss update-parameters diagnostics-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set diagnostics-profile in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"diagnosticsProfile\" : {\r\n             \"bootDiagnostics\":{\r\n               \"enabled\":null,\r\n               \"storageUri\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters diagnostics-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--boot-diagnostics <bootDiagnostics>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--boot-diagnostics",
                      "description": "Set the boot-diagnostics value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove diagnostics-profile in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"diagnosticsProfile\" : {\r\n             \"bootDiagnostics\":{\r\n               \"enabled\":null,\r\n               \"storageUri\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters diagnostics-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--boot-diagnostics",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--boot-diagnostics",
                      "description": "Remove the boot-diagnostics value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "boot-diagnostics": {
              "name": "boot-diagnostics",
              "description": "Commands to configure boot-diagnostics of vmss in update-parameters file.",
              "fullName": "vmss update-parameters boot-diagnostics",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set boot-diagnostics in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"bootDiagnostics\" : {\r\n             \"enabled\":null,\r\n             \"storageUri\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters boot-diagnostics set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--enabled <enabled>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--enabled",
                      "description": "Set the enabled value."
                    },
                    {
                      "flags": "--storage-uri <storageUri>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-uri",
                      "description": "Set the storage-uri value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove boot-diagnostics in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"bootDiagnostics\" : {\r\n             \"enabled\":null,\r\n             \"storageUri\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters boot-diagnostics delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--enabled",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--enabled",
                      "description": "Remove the enabled value."
                    },
                    {
                      "flags": "--storage-uri",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-uri",
                      "description": "Remove the storage-uri value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "extension-profile": {
              "name": "extension-profile",
              "description": "Commands to configure extension-profile of vmss in update-parameters file.",
              "fullName": "vmss update-parameters extension-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set extension-profile in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"extensionProfile\" : {\r\n             \"extensions\":[\r\n               {\r\n                 \"name\":\"\",\r\n                 \"forceUpdateTag\":\"\",\r\n                 \"publisher\":\"\",\r\n                 \"type\":\"\",\r\n                 \"typeHandlerVersion\":\"\",\r\n                 \"autoUpgradeMinorVersion\":null,\r\n                 \"settings\":{\r\n                 },\r\n                 \"protectedSettings\":{\r\n                 },\r\n                 \"provisioningState\":\"\",\r\n                 \"id\":null\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters extension-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--extensions <extensions>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--extensions",
                      "description": "Set the extensions value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove extension-profile in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"extensionProfile\" : {\r\n             \"extensions\":[\r\n               {\r\n                 \"name\":\"\",\r\n                 \"forceUpdateTag\":\"\",\r\n                 \"publisher\":\"\",\r\n                 \"type\":\"\",\r\n                 \"typeHandlerVersion\":\"\",\r\n                 \"autoUpgradeMinorVersion\":null,\r\n                 \"settings\":{\r\n                 },\r\n                 \"protectedSettings\":{\r\n                 },\r\n                 \"provisioningState\":\"\",\r\n                 \"id\":null\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters extension-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--extensions",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--extensions",
                      "description": "Remove the extensions value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "extensions": {
              "name": "extensions",
              "description": "Commands to configure extensions of vmss in update-parameters file.",
              "fullName": "vmss update-parameters extensions",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set extensions in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"extensions\" : {\r\n             \"name\":\"\",\r\n             \"forceUpdateTag\":\"\",\r\n             \"publisher\":\"\",\r\n             \"type\":\"\",\r\n             \"typeHandlerVersion\":\"\",\r\n             \"autoUpgradeMinorVersion\":null,\r\n             \"settings\":{\r\n             },\r\n             \"protectedSettings\":{\r\n             },\r\n             \"provisioningState\":\"\",\r\n             \"id\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters extensions set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--force-update-tag <forceUpdateTag>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--force-update-tag",
                      "description": "Set the force-update-tag value."
                    },
                    {
                      "flags": "--publisher <publisher>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--publisher",
                      "description": "Set the publisher value."
                    },
                    {
                      "flags": "--type <type>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Set the type value."
                    },
                    {
                      "flags": "--type-handler-version <typeHandlerVersion>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "long": "--type-handler-version",
                      "description": "Set the type-handler-version value."
                    },
                    {
                      "flags": "--auto-upgrade-minor-version <autoUpgradeMinorVersion>",
                      "required": -30,
                      "optional": 0,
                      "bool": true,
                      "long": "--auto-upgrade-minor-version",
                      "description": "Set the auto-upgrade-minor-version value."
                    },
                    {
                      "flags": "--settings <settings>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--settings",
                      "description": "Set the settings value."
                    },
                    {
                      "flags": "--protected-settings <protectedSettings>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--protected-settings",
                      "description": "Set the protected-settings value."
                    },
                    {
                      "flags": "--provisioning-state <provisioningState>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--provisioning-state",
                      "description": "Set the provisioning-state value."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove extensions in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"extensions\" : {\r\n             \"name\":\"\",\r\n             \"forceUpdateTag\":\"\",\r\n             \"publisher\":\"\",\r\n             \"type\":\"\",\r\n             \"typeHandlerVersion\":\"\",\r\n             \"autoUpgradeMinorVersion\":null,\r\n             \"settings\":{\r\n             },\r\n             \"protectedSettings\":{\r\n             },\r\n             \"provisioningState\":\"\",\r\n             \"id\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters extensions delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--force-update-tag",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--force-update-tag",
                      "description": "Remove the force-update-tag value."
                    },
                    {
                      "flags": "--publisher",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--publisher",
                      "description": "Remove the publisher value."
                    },
                    {
                      "flags": "--type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Remove the type value."
                    },
                    {
                      "flags": "--type-handler-version",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type-handler-version",
                      "description": "Remove the type-handler-version value."
                    },
                    {
                      "flags": "--auto-upgrade-minor-version",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--auto-upgrade-minor-version",
                      "description": "Remove the auto-upgrade-minor-version value."
                    },
                    {
                      "flags": "--settings",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--settings",
                      "description": "Remove the settings value."
                    },
                    {
                      "flags": "--protected-settings",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--protected-settings",
                      "description": "Remove the protected-settings value."
                    },
                    {
                      "flags": "--provisioning-state",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--provisioning-state",
                      "description": "Remove the provisioning-state value."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "identity": {
              "name": "identity",
              "description": "Commands to configure identity of vmss in update-parameters file.",
              "fullName": "vmss update-parameters identity",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set identity in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"identity\" : {\r\n             \"principalId\":\"\",\r\n             \"tenantId\":\"\",\r\n             \"type\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters identity set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--principal-id <principalId>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--principal-id",
                      "description": "Set the principal-id value."
                    },
                    {
                      "flags": "--tenant-id <tenantId>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--tenant-id",
                      "description": "Set the tenant-id value."
                    },
                    {
                      "flags": "--type <type>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Set the type value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove identity in update-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"identity\" : {\r\n             \"principalId\":\"\",\r\n             \"tenantId\":\"\",\r\n             \"type\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vmss update-parameters identity delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachineScaleSets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--principal-id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--principal-id",
                      "description": "Remove the principal-id value."
                    },
                    {
                      "flags": "--tenant-id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--tenant-id",
                      "description": "Remove the tenant-id value."
                    },
                    {
                      "flags": "--type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Remove the type value."
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        }
      }
    },
    "vmssvm": {
      "name": "vmssvm",
      "description": "Commands to manage your virtual machine scale set vm.  ",
      "fullName": "vmssvm",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "deallocate",
          "description": "Deallocates a specific virtual machine in a VM scale set. Shuts down the virtual machine and releases the compute resources it uses. You are not billed for the compute resources of this virtual machine once it is deallocated.",
          "fullName": "vmssvm deallocate",
          "usage": "[options] <resource-group> <name> <instance-id>",
          "filePath": "commands/arm/compute/virtualMachineScaleSetVMs.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-d, --instance-id <instance-id>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--instance-id",
              "description": "instance-id"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "delete",
          "description": "Deletes a virtual machine from a VM scale set.",
          "fullName": "vmssvm delete",
          "usage": "[options] <resource-group> <name> <instance-id>",
          "filePath": "commands/arm/compute/virtualMachineScaleSetVMs.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-d, --instance-id <instance-id>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--instance-id",
              "description": "instance-id"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "show",
          "description": "Gets a virtual machine from a VM scale set.",
          "fullName": "vmssvm show",
          "usage": "[options] <resource-group> <name> <instance-id>",
          "filePath": "commands/arm/compute/virtualMachineScaleSetVMs.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-d, --instance-id <instance-id>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--instance-id",
              "description": "instance-id"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "get-instance-view",
          "description": "Gets the status of a virtual machine from a VM scale set.",
          "fullName": "vmssvm get-instance-view",
          "usage": "[options] <resource-group> <name> <instance-id>",
          "filePath": "commands/arm/compute/virtualMachineScaleSetVMs.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-d, --instance-id <instance-id>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--instance-id",
              "description": "instance-id"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "list",
          "description": "Gets a list of all virtual machines in a VM scale sets.",
          "fullName": "vmssvm list",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/compute/virtualMachineScaleSetVMs.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "power-off",
          "description": "Power off (stop) a virtual machine in a VM scale set. Note that resources are still attached and you are getting charged for the resources. Instead, use deallocate to release resources and avoid charges.",
          "fullName": "vmssvm power-off",
          "usage": "[options] <resource-group> <name> <instance-id>",
          "filePath": "commands/arm/compute/virtualMachineScaleSetVMs.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-d, --instance-id <instance-id>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--instance-id",
              "description": "instance-id"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "reimage",
          "description": "Reimages (upgrade the operating system) a specific virtual machine in a VM scale set.",
          "fullName": "vmssvm reimage",
          "usage": "[options] <resource-group> <name> <instance-id>",
          "filePath": "commands/arm/compute/virtualMachineScaleSetVMs.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-d, --instance-id <instance-id>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--instance-id",
              "description": "instance-id"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "reimage-all",
          "description": "Allows you to re-image all the disks ( including data disks ) in the a VM scale set instance. This operation is only supported for managed disks.",
          "fullName": "vmssvm reimage-all",
          "usage": "[options] <resource-group> <name> <instance-id>",
          "filePath": "commands/arm/compute/virtualMachineScaleSetVMs.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-d, --instance-id <instance-id>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--instance-id",
              "description": "instance-id"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "restart",
          "description": "Restarts a virtual machine in a VM scale set.",
          "fullName": "vmssvm restart",
          "usage": "[options] <resource-group> <name> <instance-id>",
          "filePath": "commands/arm/compute/virtualMachineScaleSetVMs.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-d, --instance-id <instance-id>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--instance-id",
              "description": "instance-id"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "start",
          "description": "Starts a virtual machine in a VM scale set.",
          "fullName": "vmssvm start",
          "usage": "[options] <resource-group> <name> <instance-id>",
          "filePath": "commands/arm/compute/virtualMachineScaleSetVMs.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "name"
            },
            {
              "flags": "-d, --instance-id <instance-id>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--instance-id",
              "description": "instance-id"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        }
      ],
      "categories": {}
    },
    "vm": {
      "name": "vm",
      "description": "Commands to manage your virtual machines",
      "fullName": "vm",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "convert-to-managed-disks",
          "description": "Converts virtual machine disks from blob-based to managed disks. Virtual machine must be stop-deallocated before invoking this operation.",
          "fullName": "vm convert-to-managed-disks",
          "usage": "[options] <resource-group> <vm-name>",
          "filePath": "commands/arm/compute/virtualMachines.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --vm-name <vm-name>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--vm-name",
              "description": "vm-name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "create-or-update",
          "description": "The operation to create or update a virtual machine.",
          "fullName": "vm create-or-update",
          "usage": "[options] <resource-group> <vm-name> <parameters>",
          "filePath": "commands/arm/compute/virtualMachines.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --vm-name <vm-name>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--vm-name",
              "description": "vm-name"
            },
            {
              "flags": "-p, --parameters <parameters>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--parameters",
              "description": "A string of parameters in JSON format"
            },
            {
              "flags": "--parameter-file <parameter-file>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "long": "--parameter-file",
              "description": "The text file that contains input parameter object in JSON format"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "instance-view",
          "description": "Retrieves information about the run-time state of a virtual machine.",
          "fullName": "vm instance-view",
          "usage": "[options] <resource-group> <vm-name>",
          "filePath": "commands/arm/compute/virtualMachines.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --vm-name <vm-name>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--vm-name",
              "description": "vm-name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "perform-maintenance",
          "description": "The operation to perform maintenance on a virtual machine.",
          "fullName": "vm perform-maintenance",
          "usage": "[options] <resource-group> <vm-name>",
          "filePath": "commands/arm/compute/virtualMachines.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --vm-name <vm-name>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--vm-name",
              "description": "vm-name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "redeploy",
          "description": "The operation to redeploy a virtual machine.",
          "fullName": "vm redeploy",
          "usage": "[options] <resource-group> <vm-name>",
          "filePath": "commands/arm/compute/virtualMachines.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --vm-name <vm-name>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--vm-name",
              "description": "vm-name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "run-command",
          "description": "Run command on the VM.",
          "fullName": "vm run-command",
          "usage": "[options] <resource-group> <vm-name> <parameters>",
          "filePath": "commands/arm/compute/virtualMachines.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "resource-group"
            },
            {
              "flags": "-n, --vm-name <vm-name>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--vm-name",
              "description": "vm-name"
            },
            {
              "flags": "-p, --parameters <parameters>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--parameters",
              "description": "A string of parameters in JSON format"
            },
            {
              "flags": "--parameter-file <parameter-file>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "long": "--parameter-file",
              "description": "The text file that contains input parameter object in JSON format"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "create",
          "description": "Create a virtual machine in a resource group",
          "fullName": "vm create",
          "usage": "[options] <resource-group> <name> <location> <os-type>",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the virtual machine name"
            },
            {
              "flags": "-D, --nic-id <nic-id>",
              "required": -14,
              "optional": 0,
              "bool": true,
              "short": "-D",
              "long": "--nic-id",
              "description": "the NIC identifier\n     e.g. /subscriptions/<subscriptipn-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/networkInterfaces/<nic-name>"
            },
            {
              "flags": "-f, --nic-name <nic-name>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-f",
              "long": "--nic-name",
              "description": "the NIC name\n     If this is an existing NIC then it must exists under the current resource group identified by resource-group\n     A new NIC will be created if no NIC exists with name nic-name in the current resource group\n     To create new NIC - subnet-id or vnet-name, vnet-address-prefix, subnet-name and vnet-subnet-address-prefix are required\n     Please use nic-id to refer an existing NIC in a different resource group\n     The parameter nic-name will be ignored when nic-id is specified"
            },
            {
              "flags": "-I, --nic-ids <nic-ids>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-I",
              "long": "--nic-ids",
              "description": "the list of NIC identifiers separated by comma. In case of specifying multiple nics first one will be set as primary."
            },
            {
              "flags": "-N, --nic-names <nic-names>",
              "required": -17,
              "optional": 0,
              "bool": true,
              "short": "-N",
              "long": "--nic-names",
              "description": "the list of NIC names separated by comma. In case of specifying multiple nics first one will be set as primary.These NICs must exists in the same resource group as the VM. Please use nic-ids if that not the case. This parameter will be ignored if --nic-ids is specified"
            },
            {
              "flags": "-l, --location <location>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-l",
              "long": "--location",
              "description": "the location"
            },
            {
              "flags": "-y, --os-type <os-type>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-y",
              "long": "--os-type",
              "description": "the operating system Type, valid values are Windows, Linux"
            },
            {
              "flags": "-Q, --image-urn <image-urn>",
              "required": -17,
              "optional": 0,
              "bool": true,
              "short": "-Q",
              "long": "--image-urn",
              "description": "the image URN in the form publisherName:offer:skus:version.\n                                               URN Aliases:\n                                                 Win2012R2Datacenter = MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter:latest\n                                                 Win2012Datacenter = MicrosoftWindowsServer:WindowsServer:2012-Datacenter:latest\n                                                 Win2008R2SP1 = MicrosoftWindowsServer:WindowsServer:2008-R2-SP1:latest\n                                                 CentOS = OpenLogic:CentOS:7.2:latest\n                                                 CoreOS = CoreOS:CoreOS:Stable:latest\n                                                 Debian = credativ:Debian:8:latest\n                                                 openSUSE = SUSE:openSUSE:13.2:latest\n                                                 RHEL = RedHat:RHEL:7.2:latest\n                                                 SLES = SUSE:SLES:12-SP1:latest\n                                                 UbuntuLTS = Canonical:UbuntuServer:14.04.4-LTS:latest\n\n      Or the source VHD link of a user image, e.g. https://foo.blob.core.windows.net/system/Microsoft.Compute/Images/vhds/snap-bar.vhd\n      Option '-d' can be used with this option to specify the destination storage location where the new OS VHD will be created and put to.\n      In this case, OS profile credentials have to be specified, i.e. user name/password, or SSH keys, etc."
            },
            {
              "flags": "-u, --admin-username <admin-username>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-u",
              "long": "--admin-username",
              "description": "the user name\n      This parameter is valid for a VM created from an image (image-urn) and ignored when VM is based on an existing disk"
            },
            {
              "flags": "-p, --admin-password <admin-password>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--admin-password",
              "description": "the password\n      This parameter is valid for a VM created from an image (image-urn) and ignored when VM is based on existing disk"
            },
            {
              "flags": "-M, --ssh-publickey-file <openssh-rsa-file|pem-file>",
              "required": -26,
              "optional": 0,
              "bool": true,
              "short": "-M",
              "long": "--ssh-publickey-file",
              "description": "path to public key PEM file or SSH Public key file for SSH authentication\n     This parameter is valid only when os-type is \"Linux\""
            },
            {
              "flags": "-G, --generate-ssh-keys",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-G",
              "long": "--generate-ssh-keys",
              "description": "Auto generate SSH keys, will be ignored if --ssh-publickey-file is specified. This parameter is valid only when os-type is \"Linux\""
            },
            {
              "flags": "-z, --vm-size <vm-size>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-z",
              "long": "--vm-size",
              "description": "the virtual machine size [Standard_DS1]"
            },
            {
              "flags": "-U, --public-ip-id <public-ip-id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-U",
              "long": "--public-ip-id",
              "description": "the public ip identifier\n     e.g. /subscriptions/<subscriptipn-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/publicIPAddresses/<public-ip-name>"
            },
            {
              "flags": "-i, --public-ip-name <public-ip-name>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-i",
              "long": "--public-ip-name",
              "description": "the public ip name\n     If this is an existing public IP then it must exists under the current resource group identified by resource-group\n     A new public IP will be created if no public IP exists with name public-ip-name in the current resource group\n     Please use public-ip-id to refer an existing public IP in a different resource group\n     The parameter public-ip-name will be ignored when public-ip-id is specified"
            },
            {
              "flags": "-w, --public-ip-domain-name <public-ip-domain-name>",
              "required": -29,
              "optional": 0,
              "bool": true,
              "short": "-w",
              "long": "--public-ip-domain-name",
              "description": "the public ip domain name\n     This sets the DNS to <publicip-domain-name>.<location>.cloudapp.azure.com\n     This parameter will be used only when creating new public IP"
            },
            {
              "flags": "-m, --public-ip-allocation-method <public-ip-allocation-method>",
              "required": -35,
              "optional": 0,
              "bool": true,
              "short": "-m",
              "long": "--public-ip-allocation-method",
              "description": "the public ip allocation method, valid values are \"Dynamic\"\n     This parameter will be used only when creating new public IP"
            },
            {
              "flags": "-t, --public-ip-idletimeout <public-ip-idletimeout>",
              "required": -29,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--public-ip-idletimeout",
              "description": "the public ip idle timeout specified in minutes\n     This parameter will be used only when creating new public IP"
            },
            {
              "flags": "-S, --subnet-id <subnet-id>",
              "required": -17,
              "optional": 0,
              "bool": true,
              "short": "-S",
              "long": "--subnet-id",
              "description": "the subnet identifier\n     e.g. /subscriptions/<subscriptipn-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/virtualNetworks/<vnet-name>/subnets/<subnet-name>\n     Use this parameter if specified subnet exists only to avoid other vnet parameters to specify vnet and subnet you use\n     If you need to use subnet and virtual network from another resource group (not the same as VM resource group), just enter appropriate subnet ID"
            },
            {
              "flags": "-F, --vnet-name <vnet-name>",
              "required": -17,
              "optional": 0,
              "bool": true,
              "short": "-F",
              "long": "--vnet-name",
              "description": "the virtual network name\n     If this is an existing vnet then it must exists under the current resource group identified by resource-group\n     If this is an existing vnet then vnet-subnet-name is required\n          If no subnet exists with name vnet-subnet-name then a new subnet will be created\n          To create new subnet - vnet-subnet-address-prefix is required\n     A new vnet will be created if no vnet exists with name vnet-name in the current resource group\n     To create new vnet - vnet-address-prefix, vnet-subnet-name and vnet-subnet-address-prefix are required\n     Please use subnet-id to refer an existing subnet under a vnet in a different resource group\n     vnet-name, vnet-address-prefix, vnet-subnet-name and vnet-subnet-address-prefix will be ignored when subnet-id is specified"
            },
            {
              "flags": "-P, --vnet-address-prefix <vnet-address-prefix>",
              "required": -27,
              "optional": 0,
              "bool": true,
              "short": "-P",
              "long": "--vnet-address-prefix",
              "description": "the virtual network address prefix in IPv4/CIDR format"
            },
            {
              "flags": "-j, --vnet-subnet-name <vnet-subnet-name>",
              "required": -24,
              "optional": 0,
              "bool": true,
              "short": "-j",
              "long": "--vnet-subnet-name",
              "description": "the virtual network subnet name"
            },
            {
              "flags": "-k, --vnet-subnet-address-prefix <vnet-subnet-address-prefix>",
              "required": -34,
              "optional": 0,
              "bool": true,
              "short": "-k",
              "long": "--vnet-subnet-address-prefix",
              "description": "the virtual network subnet address prefix in IPv4/CIDR format"
            },
            {
              "flags": "-r, --availset-name <availset-name>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-r",
              "long": "--availset-name",
              "description": "the availability set name"
            },
            {
              "flags": "-o, --storage-account-name <storage-account-name>",
              "required": -28,
              "optional": 0,
              "bool": true,
              "short": "-o",
              "long": "--storage-account-name",
              "description": "the storage account name"
            },
            {
              "flags": "--storage-account-type <storage-account-type>",
              "required": -24,
              "optional": 0,
              "bool": true,
              "long": "--storage-account-type",
              "description": "the storage account type for to-be-generated storage account, default Premium_LRS"
            },
            {
              "flags": "-R, --storage-account-container-name <storage-account-container-name>",
              "required": -38,
              "optional": 0,
              "bool": true,
              "short": "-R",
              "long": "--storage-account-container-name",
              "description": "the storage account container name [vhds]"
            },
            {
              "flags": "-d, --os-disk-vhd <os-disk-vhd>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--os-disk-vhd",
              "description": "name or url of the OS disk Vhd\n     If this parameter is specified along with --image-urn ('-Q') parameter then OS disk created from the image will be stored in this vhd.\n     If this parameter is specified without --image-urn ('-Q') parameter then this vhd must exists and will be used as a specialized OS disk image.\n     If this parameter is specified without --image-urn ('-Q') parameter, OS profile credentials will be ignored, and the specialized credentials from the disk image will be used."
            },
            {
              "flags": "-a, --data-disk-caching <data-disk-caching>",
              "required": -25,
              "optional": 0,
              "bool": true,
              "short": "-a",
              "long": "--data-disk-caching",
              "description": "data disk caching, valid values are None, ReadOnly, ReadWrite"
            },
            {
              "flags": "-x, --data-disk-vhd <data-disk-vhd>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-x",
              "long": "--data-disk-vhd",
              "description": "name or url of the data disk Vhd"
            },
            {
              "flags": "-e, --data-disk-size <data-disk-size>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-e",
              "long": "--data-disk-size",
              "description": "data disk size in GB"
            },
            {
              "flags": "-Y, --data-disk-existing",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-Y",
              "long": "--data-disk-existing",
              "description": "Will use existing VHD if specified. Don't specify this param if you are creating data disk from a new VHD."
            },
            {
              "flags": "-C, --custom-data <custom-data-file>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-C",
              "long": "--custom-data",
              "description": "CustomData file"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            },
            {
              "flags": "--tags <tags>",
              "required": -8,
              "optional": 0,
              "bool": true,
              "long": "--tags",
              "description": "Tags to set to the virtual machine. Can be multiple. In the format of 'name=value'. Name is required and value is optional. For example, --tags tag1=value1;tag2"
            },
            {
              "flags": "--disable-boot-diagnostics",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--disable-boot-diagnostics",
              "description": "The switch parameter to disable the boot diagnostics (by default enabled) for VM."
            },
            {
              "flags": "--boot-diagnostics-storage-uri <boot-diagnostics-storage-uri>",
              "required": -32,
              "optional": 0,
              "bool": true,
              "long": "--boot-diagnostics-storage-uri",
              "description": "Optional. Specify storage account URL for boot diagnostics. In the format of 'https://your_stoage_account_name.blob.core.windows.net/'."
            },
            {
              "flags": "--disable-bginfo-extension",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--disable-bginfo-extension",
              "description": "The switch parameter to disable the BGInfo extension for VM."
            },
            {
              "flags": "--disk-encryption-key-vault-id <disk-encryption-key-vault-id>",
              "required": -32,
              "optional": 0,
              "bool": true,
              "long": "--disk-encryption-key-vault-id",
              "description": "The OS disk encryption key vault ID."
            },
            {
              "flags": "--disk-encryption-key-url <disk-encryption-key-url>",
              "required": -27,
              "optional": 0,
              "bool": true,
              "long": "--disk-encryption-key-url",
              "description": "The OS disk encryption key secret URL."
            },
            {
              "flags": "--key-encryption-key-vault-id <key-encryption-key-vault-id>",
              "required": -31,
              "optional": 0,
              "bool": true,
              "long": "--key-encryption-key-vault-id",
              "description": "The vault reference Url for the OS disk encryption key."
            },
            {
              "flags": "--key-encryption-key-url <key-encryption-key-url>",
              "required": -26,
              "optional": 0,
              "bool": true,
              "long": "--key-encryption-key-url",
              "description": "The Url of the master key used to encrypt the OS disk encryption key."
            },
            {
              "flags": "--license-type <license-type>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--license-type",
              "description": "The license type of the system; currently, only 'Windows_Sever' is supported."
            },
            {
              "flags": "--plan-name <plan-name>",
              "required": -13,
              "optional": 0,
              "bool": true,
              "long": "--plan-name",
              "description": "The plan name."
            },
            {
              "flags": "--plan-publisher <plan-publisher-name>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "long": "--plan-publisher",
              "description": "The plan publisher ID."
            },
            {
              "flags": "--plan-product <plan-product-name>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--plan-product",
              "description": "The plan product ID."
            },
            {
              "flags": "--plan-promotion-code <plan-promotion-code>",
              "required": -23,
              "optional": 0,
              "bool": true,
              "long": "--plan-promotion-code",
              "description": "The plan promotion code."
            }
          ]
        },
        {
          "name": "quick-create",
          "description": "Create a virtual machine with default resources in a resource group",
          "fullName": "vm quick-create",
          "usage": "[options] <resource-group> <name> <location> <os-type> <image-urn> <admin-username> <admin-password>",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the virtual machine name"
            },
            {
              "flags": "-l, --location <location>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-l",
              "long": "--location",
              "description": "the location"
            },
            {
              "flags": "-y, --os-type <os-type>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-y",
              "long": "--os-type",
              "description": "the operating system Type, valid values are Windows, Linux"
            },
            {
              "flags": "-Q, --image-urn <image-urn>",
              "required": -17,
              "optional": 0,
              "bool": true,
              "short": "-Q",
              "long": "--image-urn",
              "description": "the image URN in the form \"publisherName:offer:skus:version\",\n                                               URN Aliases:\n                                                 Win2012R2Datacenter = MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter:latest\n                                                 Win2012Datacenter = MicrosoftWindowsServer:WindowsServer:2012-Datacenter:latest\n                                                 Win2008R2SP1 = MicrosoftWindowsServer:WindowsServer:2008-R2-SP1:latest\n                                                 CentOS = OpenLogic:CentOS:7.2:latest\n                                                 CoreOS = CoreOS:CoreOS:Stable:latest\n                                                 Debian = credativ:Debian:8:latest\n                                                 openSUSE = SUSE:openSUSE:13.2:latest\n                                                 RHEL = RedHat:RHEL:7.2:latest\n                                                 SLES = SUSE:SLES:12-SP1:latest\n                                                 UbuntuLTS = Canonical:UbuntuServer:14.04.4-LTS:latest\n                                               or the VHD link of a user image,\n                                               e.g. https://foo.blob.core.windows.net/bar/vhds/baz.vhd"
            },
            {
              "flags": "-t, --storage-account-name <storage-account-name>",
              "required": -28,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--storage-account-name",
              "description": "Optional -- the storage account name"
            },
            {
              "flags": "-z, --vm-size <vm-size>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-z",
              "long": "--vm-size",
              "description": "the virtual machine size [Standard_DS1]"
            },
            {
              "flags": "-u, --admin-username <admin-username>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-u",
              "long": "--admin-username",
              "description": "the user name"
            },
            {
              "flags": "-p, --admin-password <admin-password>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--admin-password",
              "description": "the password, skipped if SSH public key file is specified for Linux VMs"
            },
            {
              "flags": "-M, --ssh-publickey-file <ssh-publickey-file>",
              "required": -26,
              "optional": 0,
              "bool": true,
              "short": "-M",
              "long": "--ssh-publickey-file",
              "description": "the path to public key file for SSH authentication,\n                                               & this parameter is valid only when os-type is Linux."
            },
            {
              "flags": "-w, --public-ip-domain-name <public-ip-domain-name>",
              "required": -29,
              "optional": 0,
              "bool": true,
              "short": "-w",
              "long": "--public-ip-domain-name",
              "description": "Optional -- the public ip domain name\n                                               This sets the DNS to \"<publicip-domain-name>.<location>.cloudapp.azure.com\".\n                                               This parameter will be used only when creating new public IP."
            },
            {
              "flags": "-C, --custom-data <custom-data-file>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-C",
              "long": "--custom-data",
              "description": "Optional -- CustomData file"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "list",
          "description": "Get all virtual machines in a resource group",
          "fullName": "vm list",
          "usage": "[options] <resource-group>",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "list-ip-address",
          "description": "Get all virtual machines and their corresponding IP addresses in subscription. If a resource group is specified it will list virtual machines and their corresponding IP addresses in specified resource group.",
          "fullName": "vm list-ip-address",
          "usage": "[options] [resource-group]",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "show",
          "description": "Get a virtual machine in a resource group",
          "fullName": "vm show",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the virtual machine name"
            },
            {
              "flags": "-d, --depth <depth>",
              "required": -13,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--depth",
              "description": "the number of times to recurse, to recurse indefinitely pass \"full\". (valid only with --json option)"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "delete",
          "description": "Delete a virtual machine in a resource group",
          "fullName": "vm delete",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the virtual machine name"
            },
            {
              "flags": "-q, --quiet",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-q",
              "long": "--quiet",
              "description": "quiet mode, do not ask for delete confirmation"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "stop",
          "description": "Shutdown a virtual machine in a resource group",
          "fullName": "vm stop",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the virtual machine name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "restart",
          "description": "Restart a virtual machine in a resource group",
          "fullName": "vm restart",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the virtual machine name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "start",
          "description": "Start a virtual machine in a resource group",
          "fullName": "vm start",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the virtual machine name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "deallocate",
          "description": "Shutdown a virtual machine in a resource group and release the compute resources",
          "fullName": "vm deallocate",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the virtual machine name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "sizes",
          "description": "Get all available virtual machine sizes",
          "fullName": "vm sizes",
          "usage": "[options]",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-l, --location <location>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-l",
              "long": "--location",
              "description": "the location name, use this to get the list of VM sizes available in a location"
            },
            {
              "flags": "-n, --vm-name <vm-name>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--vm-name",
              "description": "the virtual machine name, use this to get the list of VM sizes available for a specific VM"
            },
            {
              "flags": "-g, --resource-group <resourceGroup>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name, required when --vm-name is specified"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "capture",
          "description": "Capture a VM in a resource group as an OS Image or VM Image",
          "fullName": "vm capture",
          "usage": "[options] <resource-group> <name> <vhd-name-prefix>",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the virtual machine name"
            },
            {
              "flags": "-p, --vhd-name-prefix <vhd-name-prefix>",
              "required": -23,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--vhd-name-prefix",
              "description": "Captured virtual hard disk's name prefix"
            },
            {
              "flags": "-R, --storage-account-container-name <storage-account-container-name>",
              "required": -38,
              "optional": 0,
              "bool": true,
              "short": "-R",
              "long": "--storage-account-container-name",
              "description": "the storage account container name [vhds]"
            },
            {
              "flags": "-o, --overwrite",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-o",
              "long": "--overwrite",
              "description": "In case of conflict overwrite the target virtual hard disk if set to true."
            },
            {
              "flags": "-t, --template-file-name <template-file-name>",
              "required": -26,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--template-file-name",
              "description": "Name of the file that will contain a template that can be used to create similar VMs."
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            }
          ]
        },
        {
          "name": "generalize",
          "description": "Set the state of a VM in a resource group to Generalized.",
          "fullName": "vm generalize",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the virtual machine name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "get-instance-view",
          "description": "Get instance view of a VM in a resource group.",
          "fullName": "vm get-instance-view",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the virtual machine name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "get-serial-output",
          "description": "Get serial output of a VM in a resource group.",
          "fullName": "vm get-serial-output",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the virtual machine name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            },
            {
              "flags": "--max-length <max-length>",
              "required": -14,
              "optional": 0,
              "bool": true,
              "long": "--max-length",
              "description": "the max number of characters shown in one page of log output"
            }
          ]
        },
        {
          "name": "reset-access",
          "description": "Enables you to reset Remote Desktop Access or SSH settings on a Virtual Machine and to reset the password for the account that has administrator or sudo authority.",
          "fullName": "vm reset-access",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the virtual machine name"
            },
            {
              "flags": "-u, --user-name <user-name>",
              "required": -17,
              "optional": 0,
              "bool": true,
              "short": "-u",
              "long": "--user-name",
              "description": "the user name"
            },
            {
              "flags": "-p, --password <password>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--password",
              "description": "the password"
            },
            {
              "flags": "-M, --ssh-key-file <ssh-key-file>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-M",
              "long": "--ssh-key-file",
              "description": "path to public key PEM file or SSH Public key file for SSH authentication (valid only when os-type is \"Linux\")"
            },
            {
              "flags": "-r, --reset-ssh",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-r",
              "long": "--reset-ssh",
              "description": "Reset the SSH configuration to default"
            },
            {
              "flags": "-E, --extension-version <version>",
              "required": -25,
              "optional": 0,
              "bool": true,
              "short": "-E",
              "long": "--extension-version",
              "description": "Version of VM Access extension [1.4]"
            },
            {
              "flags": "-e, --expiration <expiration>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-e",
              "long": "--expiration",
              "description": "password expiration"
            },
            {
              "flags": "-R, --remove-user <remove-user-name>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-R",
              "long": "--remove-user",
              "description": "Remove a user account with specified name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "enable-aem",
          "description": "Enable Azure Enhanced Monitoring Extension on a VM in a resource group",
          "fullName": "vm enable-aem",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-a, --diagnostic-storage-account-name <name>",
              "required": -39,
              "optional": 0,
              "bool": true,
              "short": "-a",
              "long": "--diagnostic-storage-account-name",
              "description": "storage account name"
            },
            {
              "flags": "-q, --quiet",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-q",
              "long": "--quiet",
              "description": "quite mode(do not ask for confirmation)"
            }
          ]
        },
        {
          "name": "set",
          "description": "Update a VM in a resource group.",
          "fullName": "vm set",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the virtual machine name"
            },
            {
              "flags": "-I, --nic-ids <nic-ids>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-I",
              "long": "--nic-ids",
              "description": "the list of NIC identifiers separated by comma. In case of specifying multiple nics first one will be set as primary."
            },
            {
              "flags": "-N, --nic-names <nic-names>",
              "required": -17,
              "optional": 0,
              "bool": true,
              "short": "-N",
              "long": "--nic-names",
              "description": "the list of NIC names separated by comma. In case of specifying multiple nics first one will be set as primary.These NICs must exists in the same resource group as the VM. Please use nic-ids if that not the case. This parameter will be ignored if --nic-ids is specified"
            },
            {
              "flags": "-z, --vm-size <vm-size>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-z",
              "long": "--vm-size",
              "description": "the virtual machine size"
            },
            {
              "flags": "-t, --tags <tags>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--tags",
              "description": "Tags to set to the resource group. Can be multiple. In the format of 'name=value'. Name is required and value is optional. For example, -t tag1=value1;tag2"
            },
            {
              "flags": "-T, --no-tags",
              "required": 0,
              "optional": 0,
              "bool": false,
              "short": "-T",
              "long": "--no-tags",
              "description": "Remove all tags"
            },
            {
              "flags": "--new-os-disk-size <new-os-disk-size>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "long": "--new-os-disk-size",
              "description": "new OS disk size in GB"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            },
            {
              "flags": "--disable-boot-diagnostics",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--disable-boot-diagnostics",
              "description": "The switch parameter to disable the boot diagnostics for VM."
            },
            {
              "flags": "--enable-boot-diagnostics",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--enable-boot-diagnostics",
              "description": "The switch parameter to enable the boot diagnostics for VM."
            },
            {
              "flags": "--boot-diagnostics-storage-uri <boot-diagnostics-storage-uri>",
              "required": -32,
              "optional": 0,
              "bool": true,
              "long": "--boot-diagnostics-storage-uri",
              "description": "The storage account URL for boot diagnostics. In the format of 'https://your_stoage_account_name.blob.core.windows.net/'."
            }
          ]
        },
        {
          "name": "list-usage",
          "description": "Get usage of compute resources.",
          "fullName": "vm list-usage",
          "usage": "[options] <location>",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-l, --location <location>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-l",
              "long": "--location",
              "description": "the location"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "enable-diag",
          "description": "Enable diagnostics extension on a VM in a resource group.",
          "fullName": "vm enable-diag",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the virtual machine name"
            },
            {
              "flags": "-a, --storage-account-name <name>",
              "required": -28,
              "optional": 0,
              "bool": true,
              "short": "-a",
              "long": "--storage-account-name",
              "description": "the storage account name"
            },
            {
              "flags": "-c, --config-file <path>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-c",
              "long": "--config-file",
              "description": "path for WadCfg config file (collect basic metrics if not specified)"
            },
            {
              "flags": "-e, --extension-version <version>",
              "required": -25,
              "optional": 0,
              "bool": true,
              "short": "-e",
              "long": "--extension-version",
              "description": "Version of Diagnostics extension. Default values are [1.5] for Windows and [2.3] for Linux."
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "enable-disk-encryption",
          "description": "Enable azure disk encryption on a VM in a resource group.",
          "fullName": "vm enable-disk-encryption",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the virtual machine name"
            },
            {
              "flags": "-a, --aad-client-id <aad-client-id>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-a",
              "long": "--aad-client-id",
              "description": "Client ID of AAD app with permissions to write secrets to KeyVault"
            },
            {
              "flags": "-p, --aad-client-secret <aad-client-secret>",
              "required": -25,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--aad-client-secret",
              "description": "Client Secret of AAD app with permissions to write secrets to KeyVault"
            },
            {
              "flags": "-c, --aad-client-cert-thumbprint <aad-client-cert-thumbprint>",
              "required": -34,
              "optional": 0,
              "bool": true,
              "short": "-c",
              "long": "--aad-client-cert-thumbprint",
              "description": "Thumbprint of AAD app certificate with permissions to write secrets to KeyVault"
            },
            {
              "flags": "-k, --disk-encryption-key-vault-url <disk-encryption-key-vault-url>",
              "required": -37,
              "optional": 0,
              "bool": true,
              "short": "-k",
              "long": "--disk-encryption-key-vault-url",
              "description": "URL of the KeyVault where generated encryption key will be placed to"
            },
            {
              "flags": "-r, --disk-encryption-key-vault-id <disk-encryption-key-vault-id>",
              "required": -36,
              "optional": 0,
              "bool": true,
              "short": "-r",
              "long": "--disk-encryption-key-vault-id",
              "description": "ResourceID of the KeyVault where generated encryption key will be placed to"
            },
            {
              "flags": "-u, --key-encryption-key-url <key-encryption-key-url>",
              "required": -30,
              "optional": 0,
              "bool": true,
              "short": "-u",
              "long": "--key-encryption-key-url",
              "description": "Versioned KeyVault URL of the KeyEncryptionKey used to encrypt the disk encryption key"
            },
            {
              "flags": "-i, --key-encryption-key-vault-id <key-encryption-key-vault-id>",
              "required": -35,
              "optional": 0,
              "bool": true,
              "short": "-i",
              "long": "--key-encryption-key-vault-id",
              "description": "ResourceID of the KeyVault containing the KeyEncryptionKey used to encrypt the disk encryption key"
            },
            {
              "flags": "-l, --key-encryption-algorithm <key-encryption-algorithm>",
              "required": -32,
              "optional": 0,
              "bool": true,
              "short": "-l",
              "long": "--key-encryption-algorithm",
              "description": "KeyEncryption Algorithm used to encrypt the volume encryption key"
            },
            {
              "flags": "-t, --volume-type <volume-type>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--volume-type",
              "description": "Type of the volume OS or Data or All to perform encryption operation"
            },
            {
              "flags": "-x, --sequence-version <sequence-version>",
              "required": -24,
              "optional": 0,
              "bool": true,
              "short": "-x",
              "long": "--sequence-version",
              "description": "Sequence version of encryption operation. This must be incremented to perform repeated encryption operations on the same VM"
            },
            {
              "flags": "-b, --passphrase <passphrase>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-b",
              "long": "--passphrase",
              "description": "Passphrase specified in parameter"
            },
            {
              "flags": "-q, --quiet",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-q",
              "long": "--quiet",
              "description": "quiet mode, do not ask for confirmation"
            },
            {
              "flags": "-e, --extension-version <extension-version>",
              "required": -25,
              "optional": 0,
              "bool": true,
              "short": "-e",
              "long": "--extension-version",
              "description": "Version of AzureDiskEncryption extension. Default values are [1.1] for Windows"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            },
            {
              "flags": "-d, --disable-auto-upgrade-minor-version",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--disable-auto-upgrade-minor-version",
              "description": "Disable auto-upgrade of minor version"
            },
            {
              "flags": "-m, --skip-vm-backup",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-m",
              "long": "--skip-vm-backup",
              "description": "Skip VM backup for Linux"
            }
          ]
        },
        {
          "name": "delete-backup",
          "description": "Deletes the backup for the vm",
          "fullName": "vm delete-backup",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-i, --identity <identity>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-i",
              "long": "--identity",
              "description": "The identity of the backup"
            }
          ]
        },
        {
          "name": "show-disk-encryption-status",
          "description": "Show azure disk encryption status of a VM in a resource group.",
          "fullName": "vm show-disk-encryption-status",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the virtual machine name"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "disable-disk-encryption",
          "description": "Disable azure disk encryption on a VM in a resource group.",
          "fullName": "vm disable-disk-encryption",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/vm/vm.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the virtual machine name"
            },
            {
              "flags": "-t, --volume-type <volume-type>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--volume-type",
              "description": "Type of the volume OS or Data or All to perform encryption operation"
            },
            {
              "flags": "-x, --sequence-version <sequence-version>",
              "required": -24,
              "optional": 0,
              "bool": true,
              "short": "-x",
              "long": "--sequence-version",
              "description": "Sequence version of encryption operation. This must be incremented to perform repeated encryption operations on the same VM"
            },
            {
              "flags": "-q, --quiet",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-q",
              "long": "--quiet",
              "description": "quiet mode, do not ask for confirmation"
            },
            {
              "flags": "-e, --extension-version <extension-version>",
              "required": -25,
              "optional": 0,
              "bool": true,
              "short": "-e",
              "long": "--extension-version",
              "description": "Version of AzureDiskEncryption extension. Default values are [1.1] for Windows"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            },
            {
              "flags": "-d, --disable-auto-upgrade-minor-version",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--disable-auto-upgrade-minor-version",
              "description": "Disable auto-upgrade of minor version"
            }
          ]
        }
      ],
      "categories": {
        "config": {
          "name": "config",
          "description": "Commands to manage configuration of virtual-machines in the parameter file.",
          "fullName": "vm config",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Generate virtualMachinesCreateOrUpdate parameter string or files.",
              "fullName": "vm config create",
              "usage": "[options]",
              "filePath": "commands/arm/compute/virtualMachines.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                }
              ]
            },
            {
              "name": "patch",
              "description": "Command to patch virtualMachinesCreateOrUpdate parameter JSON file.",
              "fullName": "vm config patch",
              "usage": "[options]",
              "filePath": "commands/arm/compute/virtualMachines.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                },
                {
                  "flags": "--operation <operation>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--operation",
                  "description": "The JSON patch operation: add, remove, or replace."
                },
                {
                  "flags": "--path <path>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--path",
                  "description": "The JSON data path, e.g.: \"foo/1\"."
                },
                {
                  "flags": "--value <value>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--value",
                  "description": "The JSON value."
                },
                {
                  "flags": "--parse",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--parse",
                  "description": "Parse the JSON value to object."
                }
              ]
            }
          ],
          "categories": {
            "virtual-machine": {
              "name": "virtual-machine",
              "description": "Commands to configure virtual-machine of vm in config file.",
              "fullName": "vm config virtual-machine",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set virtual-machine in config string or files, e.g. \r\n{\r\n  \"plan\":{\r\n    \"name\":\"\",\r\n    \"publisher\":\"\",\r\n    \"product\":\"\",\r\n    \"promotionCode\":\"\"\r\n  },\r\n  \"hardwareProfile\":{\r\n    \"vmSize\":\"\"\r\n  },\r\n  \"storageProfile\":{\r\n    \"imageReference\":{\r\n      \"publisher\":\"\",\r\n      \"offer\":\"\",\r\n      \"sku\":\"\",\r\n      \"version\":\"\",\r\n      \"id\":\"\"\r\n    },\r\n    \"osDisk\":{\r\n      \"osType\":null,\r\n      \"encryptionSettings\":{\r\n        \"diskEncryptionKey\":{\r\n          \"secretUrl\":\"\",\r\n          \"sourceVault\":{\r\n            \"id\":\"\"\r\n          }\r\n        },\r\n        \"keyEncryptionKey\":{\r\n          \"keyUrl\":\"\",\r\n          \"sourceVault\":{\r\n            \"id\":\"\"\r\n          }\r\n        },\r\n        \"enabled\":null\r\n      },\r\n      \"name\":\"\",\r\n      \"vhd\":{\r\n        \"uri\":\"\"\r\n      },\r\n      \"image\":{\r\n        \"uri\":\"\"\r\n      },\r\n      \"caching\":null,\r\n      \"createOption\":\"\",\r\n      \"diskSizeGB\":null,\r\n      \"managedDisk\":{\r\n        \"storageAccountType\":null,\r\n        \"id\":\"\"\r\n      }\r\n    },\r\n    \"dataDisks\":[\r\n      {\r\n        \"lun\":\"\",\r\n        \"name\":\"\",\r\n        \"vhd\":{\r\n          \"uri\":\"\"\r\n        },\r\n        \"image\":{\r\n          \"uri\":\"\"\r\n        },\r\n        \"caching\":null,\r\n        \"createOption\":\"\",\r\n        \"diskSizeGB\":null,\r\n        \"managedDisk\":{\r\n          \"storageAccountType\":null,\r\n          \"id\":\"\"\r\n        }\r\n      }\r\n    ]\r\n  },\r\n  \"osProfile\":{\r\n    \"computerName\":\"\",\r\n    \"adminUsername\":\"\",\r\n    \"adminPassword\":\"\",\r\n    \"customData\":\"\",\r\n    \"windowsConfiguration\":{\r\n      \"provisionVMAgent\":null,\r\n      \"enableAutomaticUpdates\":null,\r\n      \"timeZone\":\"\",\r\n      \"additionalUnattendContent\":[\r\n        {\r\n          \"passName\":null,\r\n          \"componentName\":null,\r\n          \"settingName\":null,\r\n          \"content\":\"\"\r\n        }\r\n      ],\r\n      \"winRM\":{\r\n        \"listeners\":[\r\n          {\r\n            \"protocol\":null,\r\n            \"certificateUrl\":\"\"\r\n          }\r\n        ]\r\n      }\r\n    },\r\n    \"linuxConfiguration\":{\r\n      \"disablePasswordAuthentication\":null,\r\n      \"ssh\":{\r\n        \"publicKeys\":[\r\n          {\r\n            \"path\":\"\",\r\n            \"keyData\":\"\"\r\n          }\r\n        ]\r\n      }\r\n    },\r\n    \"secrets\":[\r\n      {\r\n        \"sourceVault\":{\r\n          \"id\":\"\"\r\n        },\r\n        \"vaultCertificates\":[\r\n          {\r\n            \"certificateUrl\":\"\",\r\n            \"certificateStore\":\"\"\r\n          }\r\n        ]\r\n      }\r\n    ]\r\n  },\r\n  \"networkProfile\":{\r\n    \"networkInterfaces\":[\r\n      {\r\n        \"primary\":null,\r\n        \"id\":\"\"\r\n      }\r\n    ]\r\n  },\r\n  \"diagnosticsProfile\":{\r\n    \"bootDiagnostics\":{\r\n      \"enabled\":null,\r\n      \"storageUri\":\"\"\r\n    }\r\n  },\r\n  \"availabilitySet\":{\r\n    \"id\":\"\"\r\n  },\r\n  \"provisioningState\":\"\",\r\n  \"instanceView\":{\r\n    \"platformUpdateDomain\":null,\r\n    \"platformFaultDomain\":null,\r\n    \"rdpThumbPrint\":\"\",\r\n    \"vmAgent\":{\r\n      \"vmAgentVersion\":\"\",\r\n      \"extensionHandlers\":[\r\n        {\r\n          \"type\":\"\",\r\n          \"typeHandlerVersion\":\"\",\r\n          \"status\":{\r\n            \"code\":\"\",\r\n            \"level\":null,\r\n            \"displayStatus\":\"\",\r\n            \"message\":\"\",\r\n            \"time\":null\r\n          }\r\n        }\r\n      ],\r\n      \"statuses\":[\r\n        {\r\n          \"code\":\"\",\r\n          \"level\":null,\r\n          \"displayStatus\":\"\",\r\n          \"message\":\"\",\r\n          \"time\":null\r\n        }\r\n      ]\r\n    },\r\n    \"maintenanceRedeployStatus\":{\r\n      \"isCustomerInitiatedMaintenanceAllowed\":null,\r\n      \"preMaintenanceWindowStartTime\":null,\r\n      \"preMaintenanceWindowEndTime\":null,\r\n      \"maintenanceWindowStartTime\":null,\r\n      \"maintenanceWindowEndTime\":null,\r\n      \"lastOperationResultCode\":null,\r\n      \"lastOperationMessage\":\"\"\r\n    },\r\n    \"disks\":[\r\n      {\r\n        \"name\":\"\",\r\n        \"encryptionSettings\":[\r\n          {\r\n            \"diskEncryptionKey\":{\r\n              \"secretUrl\":\"\",\r\n              \"sourceVault\":{\r\n                \"id\":\"\"\r\n              }\r\n            },\r\n            \"keyEncryptionKey\":{\r\n              \"keyUrl\":\"\",\r\n              \"sourceVault\":{\r\n                \"id\":\"\"\r\n              }\r\n            },\r\n            \"enabled\":null\r\n          }\r\n        ],\r\n        \"statuses\":[\r\n          {\r\n            \"code\":\"\",\r\n            \"level\":null,\r\n            \"displayStatus\":\"\",\r\n            \"message\":\"\",\r\n            \"time\":null\r\n          }\r\n        ]\r\n      }\r\n    ],\r\n    \"extensions\":[\r\n      {\r\n        \"name\":\"\",\r\n        \"type\":\"\",\r\n        \"typeHandlerVersion\":\"\",\r\n        \"substatuses\":[\r\n          {\r\n            \"code\":\"\",\r\n            \"level\":null,\r\n            \"displayStatus\":\"\",\r\n            \"message\":\"\",\r\n            \"time\":null\r\n          }\r\n        ],\r\n        \"statuses\":[\r\n          {\r\n            \"code\":\"\",\r\n            \"level\":null,\r\n            \"displayStatus\":\"\",\r\n            \"message\":\"\",\r\n            \"time\":null\r\n          }\r\n        ]\r\n      }\r\n    ],\r\n    \"bootDiagnostics\":{\r\n      \"consoleScreenshotBlobUri\":\"\",\r\n      \"serialConsoleLogBlobUri\":\"\"\r\n    },\r\n    \"statuses\":[\r\n      {\r\n        \"code\":\"\",\r\n        \"level\":null,\r\n        \"displayStatus\":\"\",\r\n        \"message\":\"\",\r\n        \"time\":null\r\n      }\r\n    ]\r\n  },\r\n  \"licenseType\":\"\",\r\n  \"vmId\":\"\",\r\n  \"resources\":[\r\n    {\r\n      \"forceUpdateTag\":\"\",\r\n      \"publisher\":\"\",\r\n      \"virtualMachineExtensionType\":\"\",\r\n      \"typeHandlerVersion\":\"\",\r\n      \"autoUpgradeMinorVersion\":null,\r\n      \"settings\":{\r\n      },\r\n      \"protectedSettings\":{\r\n      },\r\n      \"provisioningState\":\"\",\r\n      \"instanceView\":{\r\n        \"name\":\"\",\r\n        \"type\":\"\",\r\n        \"typeHandlerVersion\":\"\",\r\n        \"substatuses\":[\r\n          {\r\n            \"code\":\"\",\r\n            \"level\":null,\r\n            \"displayStatus\":\"\",\r\n            \"message\":\"\",\r\n            \"time\":null\r\n          }\r\n        ],\r\n        \"statuses\":[\r\n          {\r\n            \"code\":\"\",\r\n            \"level\":null,\r\n            \"displayStatus\":\"\",\r\n            \"message\":\"\",\r\n            \"time\":null\r\n          }\r\n        ]\r\n      },\r\n      \"id\":null,\r\n      \"name\":null,\r\n      \"type\":null,\r\n      \"location\":\"\",\r\n      \"tags\":{\r\n      }\r\n    }\r\n  ],\r\n  \"identity\":{\r\n    \"principalId\":\"\",\r\n    \"tenantId\":\"\",\r\n    \"type\":null\r\n  },\r\n  \"zones\":[\r\n    \"\"\r\n  ],\r\n  \"id\":null,\r\n  \"name\":null,\r\n  \"type\":null,\r\n  \"location\":\"\",\r\n  \"tags\":{\r\n  }\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config virtual-machine set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--plan <plan>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--plan",
                      "description": "Set the plan value."
                    },
                    {
                      "flags": "--hardware-profile <hardwareProfile>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--hardware-profile",
                      "description": "Set the hardware-profile value."
                    },
                    {
                      "flags": "--storage-profile <storageProfile>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-profile",
                      "description": "Set the storage-profile value."
                    },
                    {
                      "flags": "--os-profile <osProfile>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-profile",
                      "description": "Set the os-profile value."
                    },
                    {
                      "flags": "--network-profile <networkProfile>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-profile",
                      "description": "Set the network-profile value."
                    },
                    {
                      "flags": "--diagnostics-profile <diagnosticsProfile>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "long": "--diagnostics-profile",
                      "description": "Set the diagnostics-profile value."
                    },
                    {
                      "flags": "--availability-set <availabilitySet>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--availability-set",
                      "description": "Set the availability-set value."
                    },
                    {
                      "flags": "--provisioning-state <provisioningState>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--provisioning-state",
                      "description": "Set the provisioning-state value."
                    },
                    {
                      "flags": "--instance-view <instanceView>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--instance-view",
                      "description": "Set the instance-view value."
                    },
                    {
                      "flags": "--license-type <licenseType>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--license-type",
                      "description": "Set the license-type value."
                    },
                    {
                      "flags": "--vm-id <vmId>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--vm-id",
                      "description": "Set the vm-id value."
                    },
                    {
                      "flags": "--resources <resources>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--resources",
                      "description": "Set the resources value."
                    },
                    {
                      "flags": "--identity <identity>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--identity",
                      "description": "Set the identity value."
                    },
                    {
                      "flags": "--zones <zones>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--zones",
                      "description": "Set the zones value."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--type <type>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Set the type value."
                    },
                    {
                      "flags": "--location <location>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--location",
                      "description": "Set the location value."
                    },
                    {
                      "flags": "--tags <tags>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--tags",
                      "description": "Set the tags value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove virtual-machine in config string or files, e.g. \r\n{\r\n  \"plan\":{\r\n    \"name\":\"\",\r\n    \"publisher\":\"\",\r\n    \"product\":\"\",\r\n    \"promotionCode\":\"\"\r\n  },\r\n  \"hardwareProfile\":{\r\n    \"vmSize\":\"\"\r\n  },\r\n  \"storageProfile\":{\r\n    \"imageReference\":{\r\n      \"publisher\":\"\",\r\n      \"offer\":\"\",\r\n      \"sku\":\"\",\r\n      \"version\":\"\",\r\n      \"id\":\"\"\r\n    },\r\n    \"osDisk\":{\r\n      \"osType\":null,\r\n      \"encryptionSettings\":{\r\n        \"diskEncryptionKey\":{\r\n          \"secretUrl\":\"\",\r\n          \"sourceVault\":{\r\n            \"id\":\"\"\r\n          }\r\n        },\r\n        \"keyEncryptionKey\":{\r\n          \"keyUrl\":\"\",\r\n          \"sourceVault\":{\r\n            \"id\":\"\"\r\n          }\r\n        },\r\n        \"enabled\":null\r\n      },\r\n      \"name\":\"\",\r\n      \"vhd\":{\r\n        \"uri\":\"\"\r\n      },\r\n      \"image\":{\r\n        \"uri\":\"\"\r\n      },\r\n      \"caching\":null,\r\n      \"createOption\":\"\",\r\n      \"diskSizeGB\":null,\r\n      \"managedDisk\":{\r\n        \"storageAccountType\":null,\r\n        \"id\":\"\"\r\n      }\r\n    },\r\n    \"dataDisks\":[\r\n      {\r\n        \"lun\":\"\",\r\n        \"name\":\"\",\r\n        \"vhd\":{\r\n          \"uri\":\"\"\r\n        },\r\n        \"image\":{\r\n          \"uri\":\"\"\r\n        },\r\n        \"caching\":null,\r\n        \"createOption\":\"\",\r\n        \"diskSizeGB\":null,\r\n        \"managedDisk\":{\r\n          \"storageAccountType\":null,\r\n          \"id\":\"\"\r\n        }\r\n      }\r\n    ]\r\n  },\r\n  \"osProfile\":{\r\n    \"computerName\":\"\",\r\n    \"adminUsername\":\"\",\r\n    \"adminPassword\":\"\",\r\n    \"customData\":\"\",\r\n    \"windowsConfiguration\":{\r\n      \"provisionVMAgent\":null,\r\n      \"enableAutomaticUpdates\":null,\r\n      \"timeZone\":\"\",\r\n      \"additionalUnattendContent\":[\r\n        {\r\n          \"passName\":null,\r\n          \"componentName\":null,\r\n          \"settingName\":null,\r\n          \"content\":\"\"\r\n        }\r\n      ],\r\n      \"winRM\":{\r\n        \"listeners\":[\r\n          {\r\n            \"protocol\":null,\r\n            \"certificateUrl\":\"\"\r\n          }\r\n        ]\r\n      }\r\n    },\r\n    \"linuxConfiguration\":{\r\n      \"disablePasswordAuthentication\":null,\r\n      \"ssh\":{\r\n        \"publicKeys\":[\r\n          {\r\n            \"path\":\"\",\r\n            \"keyData\":\"\"\r\n          }\r\n        ]\r\n      }\r\n    },\r\n    \"secrets\":[\r\n      {\r\n        \"sourceVault\":{\r\n          \"id\":\"\"\r\n        },\r\n        \"vaultCertificates\":[\r\n          {\r\n            \"certificateUrl\":\"\",\r\n            \"certificateStore\":\"\"\r\n          }\r\n        ]\r\n      }\r\n    ]\r\n  },\r\n  \"networkProfile\":{\r\n    \"networkInterfaces\":[\r\n      {\r\n        \"primary\":null,\r\n        \"id\":\"\"\r\n      }\r\n    ]\r\n  },\r\n  \"diagnosticsProfile\":{\r\n    \"bootDiagnostics\":{\r\n      \"enabled\":null,\r\n      \"storageUri\":\"\"\r\n    }\r\n  },\r\n  \"availabilitySet\":{\r\n    \"id\":\"\"\r\n  },\r\n  \"provisioningState\":\"\",\r\n  \"instanceView\":{\r\n    \"platformUpdateDomain\":null,\r\n    \"platformFaultDomain\":null,\r\n    \"rdpThumbPrint\":\"\",\r\n    \"vmAgent\":{\r\n      \"vmAgentVersion\":\"\",\r\n      \"extensionHandlers\":[\r\n        {\r\n          \"type\":\"\",\r\n          \"typeHandlerVersion\":\"\",\r\n          \"status\":{\r\n            \"code\":\"\",\r\n            \"level\":null,\r\n            \"displayStatus\":\"\",\r\n            \"message\":\"\",\r\n            \"time\":null\r\n          }\r\n        }\r\n      ],\r\n      \"statuses\":[\r\n        {\r\n          \"code\":\"\",\r\n          \"level\":null,\r\n          \"displayStatus\":\"\",\r\n          \"message\":\"\",\r\n          \"time\":null\r\n        }\r\n      ]\r\n    },\r\n    \"maintenanceRedeployStatus\":{\r\n      \"isCustomerInitiatedMaintenanceAllowed\":null,\r\n      \"preMaintenanceWindowStartTime\":null,\r\n      \"preMaintenanceWindowEndTime\":null,\r\n      \"maintenanceWindowStartTime\":null,\r\n      \"maintenanceWindowEndTime\":null,\r\n      \"lastOperationResultCode\":null,\r\n      \"lastOperationMessage\":\"\"\r\n    },\r\n    \"disks\":[\r\n      {\r\n        \"name\":\"\",\r\n        \"encryptionSettings\":[\r\n          {\r\n            \"diskEncryptionKey\":{\r\n              \"secretUrl\":\"\",\r\n              \"sourceVault\":{\r\n                \"id\":\"\"\r\n              }\r\n            },\r\n            \"keyEncryptionKey\":{\r\n              \"keyUrl\":\"\",\r\n              \"sourceVault\":{\r\n                \"id\":\"\"\r\n              }\r\n            },\r\n            \"enabled\":null\r\n          }\r\n        ],\r\n        \"statuses\":[\r\n          {\r\n            \"code\":\"\",\r\n            \"level\":null,\r\n            \"displayStatus\":\"\",\r\n            \"message\":\"\",\r\n            \"time\":null\r\n          }\r\n        ]\r\n      }\r\n    ],\r\n    \"extensions\":[\r\n      {\r\n        \"name\":\"\",\r\n        \"type\":\"\",\r\n        \"typeHandlerVersion\":\"\",\r\n        \"substatuses\":[\r\n          {\r\n            \"code\":\"\",\r\n            \"level\":null,\r\n            \"displayStatus\":\"\",\r\n            \"message\":\"\",\r\n            \"time\":null\r\n          }\r\n        ],\r\n        \"statuses\":[\r\n          {\r\n            \"code\":\"\",\r\n            \"level\":null,\r\n            \"displayStatus\":\"\",\r\n            \"message\":\"\",\r\n            \"time\":null\r\n          }\r\n        ]\r\n      }\r\n    ],\r\n    \"bootDiagnostics\":{\r\n      \"consoleScreenshotBlobUri\":\"\",\r\n      \"serialConsoleLogBlobUri\":\"\"\r\n    },\r\n    \"statuses\":[\r\n      {\r\n        \"code\":\"\",\r\n        \"level\":null,\r\n        \"displayStatus\":\"\",\r\n        \"message\":\"\",\r\n        \"time\":null\r\n      }\r\n    ]\r\n  },\r\n  \"licenseType\":\"\",\r\n  \"vmId\":\"\",\r\n  \"resources\":[\r\n    {\r\n      \"forceUpdateTag\":\"\",\r\n      \"publisher\":\"\",\r\n      \"virtualMachineExtensionType\":\"\",\r\n      \"typeHandlerVersion\":\"\",\r\n      \"autoUpgradeMinorVersion\":null,\r\n      \"settings\":{\r\n      },\r\n      \"protectedSettings\":{\r\n      },\r\n      \"provisioningState\":\"\",\r\n      \"instanceView\":{\r\n        \"name\":\"\",\r\n        \"type\":\"\",\r\n        \"typeHandlerVersion\":\"\",\r\n        \"substatuses\":[\r\n          {\r\n            \"code\":\"\",\r\n            \"level\":null,\r\n            \"displayStatus\":\"\",\r\n            \"message\":\"\",\r\n            \"time\":null\r\n          }\r\n        ],\r\n        \"statuses\":[\r\n          {\r\n            \"code\":\"\",\r\n            \"level\":null,\r\n            \"displayStatus\":\"\",\r\n            \"message\":\"\",\r\n            \"time\":null\r\n          }\r\n        ]\r\n      },\r\n      \"id\":null,\r\n      \"name\":null,\r\n      \"type\":null,\r\n      \"location\":\"\",\r\n      \"tags\":{\r\n      }\r\n    }\r\n  ],\r\n  \"identity\":{\r\n    \"principalId\":\"\",\r\n    \"tenantId\":\"\",\r\n    \"type\":null\r\n  },\r\n  \"zones\":[\r\n    \"\"\r\n  ],\r\n  \"id\":null,\r\n  \"name\":null,\r\n  \"type\":null,\r\n  \"location\":\"\",\r\n  \"tags\":{\r\n  }\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config virtual-machine delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--plan",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--plan",
                      "description": "Remove the plan value."
                    },
                    {
                      "flags": "--hardware-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--hardware-profile",
                      "description": "Remove the hardware-profile value."
                    },
                    {
                      "flags": "--storage-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-profile",
                      "description": "Remove the storage-profile value."
                    },
                    {
                      "flags": "--os-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-profile",
                      "description": "Remove the os-profile value."
                    },
                    {
                      "flags": "--network-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-profile",
                      "description": "Remove the network-profile value."
                    },
                    {
                      "flags": "--diagnostics-profile",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--diagnostics-profile",
                      "description": "Remove the diagnostics-profile value."
                    },
                    {
                      "flags": "--availability-set",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--availability-set",
                      "description": "Remove the availability-set value."
                    },
                    {
                      "flags": "--provisioning-state",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--provisioning-state",
                      "description": "Remove the provisioning-state value."
                    },
                    {
                      "flags": "--instance-view",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--instance-view",
                      "description": "Remove the instance-view value."
                    },
                    {
                      "flags": "--license-type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--license-type",
                      "description": "Remove the license-type value."
                    },
                    {
                      "flags": "--vm-id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--vm-id",
                      "description": "Remove the vm-id value."
                    },
                    {
                      "flags": "--resources",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--resources",
                      "description": "Remove the resources value."
                    },
                    {
                      "flags": "--identity",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--identity",
                      "description": "Remove the identity value."
                    },
                    {
                      "flags": "--zones",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--zones",
                      "description": "Remove the zones value."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Remove the type value."
                    },
                    {
                      "flags": "--location",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--location",
                      "description": "Remove the location value."
                    },
                    {
                      "flags": "--tags",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--tags",
                      "description": "Remove the tags value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "plan": {
              "name": "plan",
              "description": "Commands to configure plan of vm in config file.",
              "fullName": "vm config plan",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set plan in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"plan\" : {\r\n             \"name\":\"\",\r\n             \"publisher\":\"\",\r\n             \"product\":\"\",\r\n             \"promotionCode\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config plan set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--publisher <publisher>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--publisher",
                      "description": "Set the publisher value."
                    },
                    {
                      "flags": "--product <product>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--product",
                      "description": "Set the product value."
                    },
                    {
                      "flags": "--promotion-code <promotionCode>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--promotion-code",
                      "description": "Set the promotion-code value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove plan in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"plan\" : {\r\n             \"name\":\"\",\r\n             \"publisher\":\"\",\r\n             \"product\":\"\",\r\n             \"promotionCode\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config plan delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--publisher",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--publisher",
                      "description": "Remove the publisher value."
                    },
                    {
                      "flags": "--product",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--product",
                      "description": "Remove the product value."
                    },
                    {
                      "flags": "--promotion-code",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--promotion-code",
                      "description": "Remove the promotion-code value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "hardware-profile": {
              "name": "hardware-profile",
              "description": "Commands to configure hardware-profile of vm in config file.",
              "fullName": "vm config hardware-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set hardware-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"hardwareProfile\" : {\r\n             \"vmSize\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config hardware-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--vm-size <vmSize>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--vm-size",
                      "description": "Set the vm-size value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove hardware-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"hardwareProfile\" : {\r\n             \"vmSize\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config hardware-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--vm-size",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--vm-size",
                      "description": "Remove the vm-size value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "storage-profile": {
              "name": "storage-profile",
              "description": "Commands to configure storage-profile of vm in config file.",
              "fullName": "vm config storage-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set storage-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"storageProfile\" : {\r\n             \"imageReference\":{\r\n               \"publisher\":\"\",\r\n               \"offer\":\"\",\r\n               \"sku\":\"\",\r\n               \"version\":\"\",\r\n               \"id\":\"\"\r\n             },\r\n             \"osDisk\":{\r\n               \"osType\":null,\r\n               \"encryptionSettings\":{\r\n                 \"diskEncryptionKey\":{\r\n                   \"secretUrl\":\"\",\r\n                   \"sourceVault\":{\r\n                     \"id\":\"\"\r\n                   }\r\n                 },\r\n                 \"keyEncryptionKey\":{\r\n                   \"keyUrl\":\"\",\r\n                   \"sourceVault\":{\r\n                     \"id\":\"\"\r\n                   }\r\n                 },\r\n                 \"enabled\":null\r\n               },\r\n               \"name\":\"\",\r\n               \"vhd\":{\r\n                 \"uri\":\"\"\r\n               },\r\n               \"image\":{\r\n                 \"uri\":\"\"\r\n               },\r\n               \"caching\":null,\r\n               \"createOption\":\"\",\r\n               \"diskSizeGB\":null,\r\n               \"managedDisk\":{\r\n                 \"storageAccountType\":null,\r\n                 \"id\":\"\"\r\n               }\r\n             },\r\n             \"dataDisks\":[\r\n               {\r\n                 \"lun\":\"\",\r\n                 \"name\":\"\",\r\n                 \"vhd\":{\r\n                   \"uri\":\"\"\r\n                 },\r\n                 \"image\":{\r\n                   \"uri\":\"\"\r\n                 },\r\n                 \"caching\":null,\r\n                 \"createOption\":\"\",\r\n                 \"diskSizeGB\":null,\r\n                 \"managedDisk\":{\r\n                   \"storageAccountType\":null,\r\n                   \"id\":\"\"\r\n                 }\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config storage-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--image-reference <imageReference>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--image-reference",
                      "description": "Set the image-reference value."
                    },
                    {
                      "flags": "--os-disk <osDisk>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-disk",
                      "description": "Set the os-disk value."
                    },
                    {
                      "flags": "--data-disks <dataDisks>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--data-disks",
                      "description": "Set the data-disks value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove storage-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"storageProfile\" : {\r\n             \"imageReference\":{\r\n               \"publisher\":\"\",\r\n               \"offer\":\"\",\r\n               \"sku\":\"\",\r\n               \"version\":\"\",\r\n               \"id\":\"\"\r\n             },\r\n             \"osDisk\":{\r\n               \"osType\":null,\r\n               \"encryptionSettings\":{\r\n                 \"diskEncryptionKey\":{\r\n                   \"secretUrl\":\"\",\r\n                   \"sourceVault\":{\r\n                     \"id\":\"\"\r\n                   }\r\n                 },\r\n                 \"keyEncryptionKey\":{\r\n                   \"keyUrl\":\"\",\r\n                   \"sourceVault\":{\r\n                     \"id\":\"\"\r\n                   }\r\n                 },\r\n                 \"enabled\":null\r\n               },\r\n               \"name\":\"\",\r\n               \"vhd\":{\r\n                 \"uri\":\"\"\r\n               },\r\n               \"image\":{\r\n                 \"uri\":\"\"\r\n               },\r\n               \"caching\":null,\r\n               \"createOption\":\"\",\r\n               \"diskSizeGB\":null,\r\n               \"managedDisk\":{\r\n                 \"storageAccountType\":null,\r\n                 \"id\":\"\"\r\n               }\r\n             },\r\n             \"dataDisks\":[\r\n               {\r\n                 \"lun\":\"\",\r\n                 \"name\":\"\",\r\n                 \"vhd\":{\r\n                   \"uri\":\"\"\r\n                 },\r\n                 \"image\":{\r\n                   \"uri\":\"\"\r\n                 },\r\n                 \"caching\":null,\r\n                 \"createOption\":\"\",\r\n                 \"diskSizeGB\":null,\r\n                 \"managedDisk\":{\r\n                   \"storageAccountType\":null,\r\n                   \"id\":\"\"\r\n                 }\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config storage-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--image-reference",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--image-reference",
                      "description": "Remove the image-reference value."
                    },
                    {
                      "flags": "--os-disk",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-disk",
                      "description": "Remove the os-disk value."
                    },
                    {
                      "flags": "--data-disks",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--data-disks",
                      "description": "Remove the data-disks value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "image-reference": {
              "name": "image-reference",
              "description": "Commands to configure image-reference of vm in config file.",
              "fullName": "vm config image-reference",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set image-reference in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"imageReference\" : {\r\n             \"publisher\":\"\",\r\n             \"offer\":\"\",\r\n             \"sku\":\"\",\r\n             \"version\":\"\",\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config image-reference set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--publisher <publisher>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--publisher",
                      "description": "Set the publisher value."
                    },
                    {
                      "flags": "--offer <offer>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--offer",
                      "description": "Set the offer value."
                    },
                    {
                      "flags": "--sku <sku>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--sku",
                      "description": "Set the sku value."
                    },
                    {
                      "flags": "--version <version>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--version",
                      "description": "Set the version value."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove image-reference in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"imageReference\" : {\r\n             \"publisher\":\"\",\r\n             \"offer\":\"\",\r\n             \"sku\":\"\",\r\n             \"version\":\"\",\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config image-reference delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--publisher",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--publisher",
                      "description": "Remove the publisher value."
                    },
                    {
                      "flags": "--offer",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--offer",
                      "description": "Remove the offer value."
                    },
                    {
                      "flags": "--sku",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--sku",
                      "description": "Remove the sku value."
                    },
                    {
                      "flags": "--version",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--version",
                      "description": "Remove the version value."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "os-disk": {
              "name": "os-disk",
              "description": "Commands to configure os-disk of vm in config file.",
              "fullName": "vm config os-disk",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set os-disk in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"osDisk\" : {\r\n             \"osType\":null,\r\n             \"encryptionSettings\":{\r\n               \"diskEncryptionKey\":{\r\n                 \"secretUrl\":\"\",\r\n                 \"sourceVault\":{\r\n                   \"id\":\"\"\r\n                 }\r\n               },\r\n               \"keyEncryptionKey\":{\r\n                 \"keyUrl\":\"\",\r\n                 \"sourceVault\":{\r\n                   \"id\":\"\"\r\n                 }\r\n               },\r\n               \"enabled\":null\r\n             },\r\n             \"name\":\"\",\r\n             \"vhd\":{\r\n               \"uri\":\"\"\r\n             },\r\n             \"image\":{\r\n               \"uri\":\"\"\r\n             },\r\n             \"caching\":null,\r\n             \"createOption\":\"\",\r\n             \"diskSizeGB\":null,\r\n             \"managedDisk\":{\r\n               \"storageAccountType\":null,\r\n               \"id\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config os-disk set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--os-type <osType>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-type",
                      "description": "Set the os-type value."
                    },
                    {
                      "flags": "--encryption-settings <encryptionSettings>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "long": "--encryption-settings",
                      "description": "Set the encryption-settings value."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--vhd <vhd>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--vhd",
                      "description": "Set the vhd value."
                    },
                    {
                      "flags": "--image <image>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--image",
                      "description": "Set the image value."
                    },
                    {
                      "flags": "--caching <caching>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--caching",
                      "description": "Set the caching value."
                    },
                    {
                      "flags": "--create-option <createOption>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--create-option",
                      "description": "Set the create-option value."
                    },
                    {
                      "flags": "--disk-size-g-b <diskSizeGB>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-size-g-b",
                      "description": "Set the disk-size-g-b value."
                    },
                    {
                      "flags": "--managed-disk <managedDisk>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--managed-disk",
                      "description": "Set the managed-disk value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove os-disk in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"osDisk\" : {\r\n             \"osType\":null,\r\n             \"encryptionSettings\":{\r\n               \"diskEncryptionKey\":{\r\n                 \"secretUrl\":\"\",\r\n                 \"sourceVault\":{\r\n                   \"id\":\"\"\r\n                 }\r\n               },\r\n               \"keyEncryptionKey\":{\r\n                 \"keyUrl\":\"\",\r\n                 \"sourceVault\":{\r\n                   \"id\":\"\"\r\n                 }\r\n               },\r\n               \"enabled\":null\r\n             },\r\n             \"name\":\"\",\r\n             \"vhd\":{\r\n               \"uri\":\"\"\r\n             },\r\n             \"image\":{\r\n               \"uri\":\"\"\r\n             },\r\n             \"caching\":null,\r\n             \"createOption\":\"\",\r\n             \"diskSizeGB\":null,\r\n             \"managedDisk\":{\r\n               \"storageAccountType\":null,\r\n               \"id\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config os-disk delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--os-type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--os-type",
                      "description": "Remove the os-type value."
                    },
                    {
                      "flags": "--encryption-settings",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--encryption-settings",
                      "description": "Remove the encryption-settings value."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--vhd",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--vhd",
                      "description": "Remove the vhd value."
                    },
                    {
                      "flags": "--image",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--image",
                      "description": "Remove the image value."
                    },
                    {
                      "flags": "--caching",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--caching",
                      "description": "Remove the caching value."
                    },
                    {
                      "flags": "--create-option",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--create-option",
                      "description": "Remove the create-option value."
                    },
                    {
                      "flags": "--disk-size-g-b",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-size-g-b",
                      "description": "Remove the disk-size-g-b value."
                    },
                    {
                      "flags": "--managed-disk",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--managed-disk",
                      "description": "Remove the managed-disk value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "encryption-settings": {
              "name": "encryption-settings",
              "description": "Commands to configure encryption-settings of vm in config file.",
              "fullName": "vm config encryption-settings",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set encryption-settings in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"encryptionSettings\" : {\r\n             \"diskEncryptionKey\":{\r\n               \"secretUrl\":\"\",\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               }\r\n             },\r\n             \"keyEncryptionKey\":{\r\n               \"keyUrl\":\"\",\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               }\r\n             },\r\n             \"enabled\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config encryption-settings set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--disk-encryption-key <diskEncryptionKey>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-encryption-key",
                      "description": "Set the disk-encryption-key value."
                    },
                    {
                      "flags": "--key-encryption-key <keyEncryptionKey>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-encryption-key",
                      "description": "Set the key-encryption-key value."
                    },
                    {
                      "flags": "--enabled <enabled>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--enabled",
                      "description": "Set the enabled value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove encryption-settings in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"encryptionSettings\" : {\r\n             \"diskEncryptionKey\":{\r\n               \"secretUrl\":\"\",\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               }\r\n             },\r\n             \"keyEncryptionKey\":{\r\n               \"keyUrl\":\"\",\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               }\r\n             },\r\n             \"enabled\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config encryption-settings delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--disk-encryption-key",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-encryption-key",
                      "description": "Remove the disk-encryption-key value."
                    },
                    {
                      "flags": "--key-encryption-key",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-encryption-key",
                      "description": "Remove the key-encryption-key value."
                    },
                    {
                      "flags": "--enabled",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--enabled",
                      "description": "Remove the enabled value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "disk-encryption-key": {
              "name": "disk-encryption-key",
              "description": "Commands to configure disk-encryption-key of vm in config file.",
              "fullName": "vm config disk-encryption-key",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set disk-encryption-key in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"diskEncryptionKey\" : {\r\n             \"secretUrl\":\"\",\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config disk-encryption-key set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--secret-url <secretUrl>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--secret-url",
                      "description": "Set the secret-url value."
                    },
                    {
                      "flags": "--source-vault <sourceVault>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Set the source-vault value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove disk-encryption-key in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"diskEncryptionKey\" : {\r\n             \"secretUrl\":\"\",\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config disk-encryption-key delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--secret-url",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--secret-url",
                      "description": "Remove the secret-url value."
                    },
                    {
                      "flags": "--source-vault",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Remove the source-vault value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "source-vault": {
              "name": "source-vault",
              "description": "Commands to configure source-vault of vm in config file.",
              "fullName": "vm config source-vault",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set source-vault in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config source-vault set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove source-vault in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config source-vault delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "key-encryption-key": {
              "name": "key-encryption-key",
              "description": "Commands to configure key-encryption-key of vm in config file.",
              "fullName": "vm config key-encryption-key",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set key-encryption-key in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"keyEncryptionKey\" : {\r\n             \"keyUrl\":\"\",\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config key-encryption-key set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--key-url <keyUrl>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-url",
                      "description": "Set the key-url value."
                    },
                    {
                      "flags": "--source-vault <sourceVault>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Set the source-vault value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove key-encryption-key in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"keyEncryptionKey\" : {\r\n             \"keyUrl\":\"\",\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config key-encryption-key delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--key-url",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-url",
                      "description": "Remove the key-url value."
                    },
                    {
                      "flags": "--source-vault",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Remove the source-vault value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "key-encryption-key-source-vault": {
              "name": "key-encryption-key-source-vault",
              "description": "Commands to configure key-encryption-key-source-vault of vm in config file.",
              "fullName": "vm config key-encryption-key-source-vault",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set key-encryption-key-source-vault in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config key-encryption-key-source-vault set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--encryption-settings-index <encryption-settings-index>",
                      "required": -29,
                      "optional": 0,
                      "bool": true,
                      "long": "--encryption-settings-index",
                      "description": "Indexer: encryption-settings-index."
                    },
                    {
                      "flags": "--disks-index <disks-index>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--disks-index",
                      "description": "Indexer: disks-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove key-encryption-key-source-vault in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config key-encryption-key-source-vault delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--encryption-settings-index <encryption-settings-index>",
                      "required": -29,
                      "optional": 0,
                      "bool": true,
                      "long": "--encryption-settings-index",
                      "description": "Indexer: encryption-settings-index."
                    },
                    {
                      "flags": "--disks-index <disks-index>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--disks-index",
                      "description": "Indexer: disks-index."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "vhd": {
              "name": "vhd",
              "description": "Commands to configure vhd of vm in config file.",
              "fullName": "vm config vhd",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set vhd in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"vhd\" : {\r\n             \"uri\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config vhd set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--uri <uri>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--uri",
                      "description": "Set the uri value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove vhd in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"vhd\" : {\r\n             \"uri\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config vhd delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--uri",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--uri",
                      "description": "Remove the uri value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "image": {
              "name": "image",
              "description": "Commands to configure image of vm in config file.",
              "fullName": "vm config image",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set image in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"image\" : {\r\n             \"uri\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config image set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--uri <uri>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--uri",
                      "description": "Set the uri value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove image in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"image\" : {\r\n             \"uri\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config image delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--uri",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--uri",
                      "description": "Remove the uri value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "managed-disk": {
              "name": "managed-disk",
              "description": "Commands to configure managed-disk of vm in config file.",
              "fullName": "vm config managed-disk",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set managed-disk in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"managedDisk\" : {\r\n             \"storageAccountType\":null,\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config managed-disk set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--storage-account-type <storageAccountType>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-account-type",
                      "description": "Set the storage-account-type value."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove managed-disk in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"managedDisk\" : {\r\n             \"storageAccountType\":null,\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config managed-disk delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--storage-account-type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-account-type",
                      "description": "Remove the storage-account-type value."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "data-disks": {
              "name": "data-disks",
              "description": "Commands to configure data-disks of vm in config file.",
              "fullName": "vm config data-disks",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set data-disks in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"dataDisks\" : {\r\n             \"lun\":\"\",\r\n             \"name\":\"\",\r\n             \"vhd\":{\r\n               \"uri\":\"\"\r\n             },\r\n             \"image\":{\r\n               \"uri\":\"\"\r\n             },\r\n             \"caching\":null,\r\n             \"createOption\":\"\",\r\n             \"diskSizeGB\":null,\r\n             \"managedDisk\":{\r\n               \"storageAccountType\":null,\r\n               \"id\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config data-disks set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--lun <lun>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--lun",
                      "description": "Set the lun value."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--vhd <vhd>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--vhd",
                      "description": "Set the vhd value."
                    },
                    {
                      "flags": "--image <image>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--image",
                      "description": "Set the image value."
                    },
                    {
                      "flags": "--caching <caching>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--caching",
                      "description": "Set the caching value."
                    },
                    {
                      "flags": "--create-option <createOption>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--create-option",
                      "description": "Set the create-option value."
                    },
                    {
                      "flags": "--disk-size-g-b <diskSizeGB>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-size-g-b",
                      "description": "Set the disk-size-g-b value."
                    },
                    {
                      "flags": "--managed-disk <managedDisk>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--managed-disk",
                      "description": "Set the managed-disk value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove data-disks in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"dataDisks\" : {\r\n             \"lun\":\"\",\r\n             \"name\":\"\",\r\n             \"vhd\":{\r\n               \"uri\":\"\"\r\n             },\r\n             \"image\":{\r\n               \"uri\":\"\"\r\n             },\r\n             \"caching\":null,\r\n             \"createOption\":\"\",\r\n             \"diskSizeGB\":null,\r\n             \"managedDisk\":{\r\n               \"storageAccountType\":null,\r\n               \"id\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config data-disks delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--lun",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--lun",
                      "description": "Remove the lun value."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--vhd",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--vhd",
                      "description": "Remove the vhd value."
                    },
                    {
                      "flags": "--image",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--image",
                      "description": "Remove the image value."
                    },
                    {
                      "flags": "--caching",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--caching",
                      "description": "Remove the caching value."
                    },
                    {
                      "flags": "--create-option",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--create-option",
                      "description": "Remove the create-option value."
                    },
                    {
                      "flags": "--disk-size-g-b",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-size-g-b",
                      "description": "Remove the disk-size-g-b value."
                    },
                    {
                      "flags": "--managed-disk",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--managed-disk",
                      "description": "Remove the managed-disk value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "data-disks-vhd": {
              "name": "data-disks-vhd",
              "description": "Commands to configure data-disks-vhd of vm in config file.",
              "fullName": "vm config data-disks-vhd",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set data-disks-vhd in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"vhd\" : {\r\n             \"uri\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config data-disks-vhd set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--data-disks-index <data-disks-index>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--data-disks-index",
                      "description": "Indexer: data-disks-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--uri <uri>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--uri",
                      "description": "Set the uri value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove data-disks-vhd in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"vhd\" : {\r\n             \"uri\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config data-disks-vhd delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--data-disks-index <data-disks-index>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--data-disks-index",
                      "description": "Indexer: data-disks-index."
                    },
                    {
                      "flags": "--uri",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--uri",
                      "description": "Remove the uri value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "data-disks-image": {
              "name": "data-disks-image",
              "description": "Commands to configure data-disks-image of vm in config file.",
              "fullName": "vm config data-disks-image",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set data-disks-image in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"image\" : {\r\n             \"uri\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config data-disks-image set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--data-disks-index <data-disks-index>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--data-disks-index",
                      "description": "Indexer: data-disks-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--uri <uri>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--uri",
                      "description": "Set the uri value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove data-disks-image in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"image\" : {\r\n             \"uri\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config data-disks-image delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--data-disks-index <data-disks-index>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--data-disks-index",
                      "description": "Indexer: data-disks-index."
                    },
                    {
                      "flags": "--uri",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--uri",
                      "description": "Remove the uri value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "data-disks-managed-disk": {
              "name": "data-disks-managed-disk",
              "description": "Commands to configure data-disks-managed-disk of vm in config file.",
              "fullName": "vm config data-disks-managed-disk",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set data-disks-managed-disk in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"managedDisk\" : {\r\n             \"storageAccountType\":null,\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config data-disks-managed-disk set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--data-disks-index <data-disks-index>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--data-disks-index",
                      "description": "Indexer: data-disks-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--storage-account-type <storageAccountType>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-account-type",
                      "description": "Set the storage-account-type value."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove data-disks-managed-disk in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"managedDisk\" : {\r\n             \"storageAccountType\":null,\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config data-disks-managed-disk delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--data-disks-index <data-disks-index>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--data-disks-index",
                      "description": "Indexer: data-disks-index."
                    },
                    {
                      "flags": "--storage-account-type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-account-type",
                      "description": "Remove the storage-account-type value."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "os-profile": {
              "name": "os-profile",
              "description": "Commands to configure os-profile of vm in config file.",
              "fullName": "vm config os-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set os-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"osProfile\" : {\r\n             \"computerName\":\"\",\r\n             \"adminUsername\":\"\",\r\n             \"adminPassword\":\"\",\r\n             \"customData\":\"\",\r\n             \"windowsConfiguration\":{\r\n               \"provisionVMAgent\":null,\r\n               \"enableAutomaticUpdates\":null,\r\n               \"timeZone\":\"\",\r\n               \"additionalUnattendContent\":[\r\n                 {\r\n                   \"passName\":null,\r\n                   \"componentName\":null,\r\n                   \"settingName\":null,\r\n                   \"content\":\"\"\r\n                 }\r\n               ],\r\n               \"winRM\":{\r\n                 \"listeners\":[\r\n                   {\r\n                     \"protocol\":null,\r\n                     \"certificateUrl\":\"\"\r\n                   }\r\n                 ]\r\n               }\r\n             },\r\n             \"linuxConfiguration\":{\r\n               \"disablePasswordAuthentication\":null,\r\n               \"ssh\":{\r\n                 \"publicKeys\":[\r\n                   {\r\n                     \"path\":\"\",\r\n                     \"keyData\":\"\"\r\n                   }\r\n                 ]\r\n               }\r\n             },\r\n             \"secrets\":[\r\n               {\r\n                 \"sourceVault\":{\r\n                   \"id\":\"\"\r\n                 },\r\n                 \"vaultCertificates\":[\r\n                   {\r\n                     \"certificateUrl\":\"\",\r\n                     \"certificateStore\":\"\"\r\n                   }\r\n                 ]\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config os-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--computer-name <computerName>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--computer-name",
                      "description": "Set the computer-name value."
                    },
                    {
                      "flags": "--admin-username <adminUsername>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--admin-username",
                      "description": "Set the admin-username value."
                    },
                    {
                      "flags": "--admin-password <adminPassword>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--admin-password",
                      "description": "Set the admin-password value."
                    },
                    {
                      "flags": "--custom-data <customData>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--custom-data",
                      "description": "Set the custom-data value."
                    },
                    {
                      "flags": "--windows-configuration <windowsConfiguration>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "long": "--windows-configuration",
                      "description": "Set the windows-configuration value."
                    },
                    {
                      "flags": "--linux-configuration <linuxConfiguration>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "long": "--linux-configuration",
                      "description": "Set the linux-configuration value."
                    },
                    {
                      "flags": "--secrets <secrets>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--secrets",
                      "description": "Set the secrets value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove os-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"osProfile\" : {\r\n             \"computerName\":\"\",\r\n             \"adminUsername\":\"\",\r\n             \"adminPassword\":\"\",\r\n             \"customData\":\"\",\r\n             \"windowsConfiguration\":{\r\n               \"provisionVMAgent\":null,\r\n               \"enableAutomaticUpdates\":null,\r\n               \"timeZone\":\"\",\r\n               \"additionalUnattendContent\":[\r\n                 {\r\n                   \"passName\":null,\r\n                   \"componentName\":null,\r\n                   \"settingName\":null,\r\n                   \"content\":\"\"\r\n                 }\r\n               ],\r\n               \"winRM\":{\r\n                 \"listeners\":[\r\n                   {\r\n                     \"protocol\":null,\r\n                     \"certificateUrl\":\"\"\r\n                   }\r\n                 ]\r\n               }\r\n             },\r\n             \"linuxConfiguration\":{\r\n               \"disablePasswordAuthentication\":null,\r\n               \"ssh\":{\r\n                 \"publicKeys\":[\r\n                   {\r\n                     \"path\":\"\",\r\n                     \"keyData\":\"\"\r\n                   }\r\n                 ]\r\n               }\r\n             },\r\n             \"secrets\":[\r\n               {\r\n                 \"sourceVault\":{\r\n                   \"id\":\"\"\r\n                 },\r\n                 \"vaultCertificates\":[\r\n                   {\r\n                     \"certificateUrl\":\"\",\r\n                     \"certificateStore\":\"\"\r\n                   }\r\n                 ]\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config os-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--computer-name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--computer-name",
                      "description": "Remove the computer-name value."
                    },
                    {
                      "flags": "--admin-username",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--admin-username",
                      "description": "Remove the admin-username value."
                    },
                    {
                      "flags": "--admin-password",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--admin-password",
                      "description": "Remove the admin-password value."
                    },
                    {
                      "flags": "--custom-data",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--custom-data",
                      "description": "Remove the custom-data value."
                    },
                    {
                      "flags": "--windows-configuration",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--windows-configuration",
                      "description": "Remove the windows-configuration value."
                    },
                    {
                      "flags": "--linux-configuration",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--linux-configuration",
                      "description": "Remove the linux-configuration value."
                    },
                    {
                      "flags": "--secrets",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--secrets",
                      "description": "Remove the secrets value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "windows-configuration": {
              "name": "windows-configuration",
              "description": "Commands to configure windows-configuration of vm in config file.",
              "fullName": "vm config windows-configuration",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set windows-configuration in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"windowsConfiguration\" : {\r\n             \"provisionVMAgent\":null,\r\n             \"enableAutomaticUpdates\":null,\r\n             \"timeZone\":\"\",\r\n             \"additionalUnattendContent\":[\r\n               {\r\n                 \"passName\":null,\r\n                 \"componentName\":null,\r\n                 \"settingName\":null,\r\n                 \"content\":\"\"\r\n               }\r\n             ],\r\n             \"winRM\":{\r\n               \"listeners\":[\r\n                 {\r\n                   \"protocol\":null,\r\n                   \"certificateUrl\":\"\"\r\n                 }\r\n               ]\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config windows-configuration set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--provision-vm-agent <provisionVMAgent>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--provision-vm-agent",
                      "description": "Set the provision-vm-agent value."
                    },
                    {
                      "flags": "--enable-automatic-updates <enableAutomaticUpdates>",
                      "required": -28,
                      "optional": 0,
                      "bool": true,
                      "long": "--enable-automatic-updates",
                      "description": "Set the enable-automatic-updates value."
                    },
                    {
                      "flags": "--time-zone <timeZone>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--time-zone",
                      "description": "Set the time-zone value."
                    },
                    {
                      "flags": "--additional-unattend-content <additionalUnattendContent>",
                      "required": -31,
                      "optional": 0,
                      "bool": true,
                      "long": "--additional-unattend-content",
                      "description": "Set the additional-unattend-content value."
                    },
                    {
                      "flags": "--win-rm <winRM>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--win-rm",
                      "description": "Set the win-rm value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove windows-configuration in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"windowsConfiguration\" : {\r\n             \"provisionVMAgent\":null,\r\n             \"enableAutomaticUpdates\":null,\r\n             \"timeZone\":\"\",\r\n             \"additionalUnattendContent\":[\r\n               {\r\n                 \"passName\":null,\r\n                 \"componentName\":null,\r\n                 \"settingName\":null,\r\n                 \"content\":\"\"\r\n               }\r\n             ],\r\n             \"winRM\":{\r\n               \"listeners\":[\r\n                 {\r\n                   \"protocol\":null,\r\n                   \"certificateUrl\":\"\"\r\n                 }\r\n               ]\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config windows-configuration delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--provision-vm-agent",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--provision-vm-agent",
                      "description": "Remove the provision-vm-agent value."
                    },
                    {
                      "flags": "--enable-automatic-updates",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--enable-automatic-updates",
                      "description": "Remove the enable-automatic-updates value."
                    },
                    {
                      "flags": "--time-zone",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--time-zone",
                      "description": "Remove the time-zone value."
                    },
                    {
                      "flags": "--additional-unattend-content",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--additional-unattend-content",
                      "description": "Remove the additional-unattend-content value."
                    },
                    {
                      "flags": "--win-rm",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--win-rm",
                      "description": "Remove the win-rm value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "additional-unattend-content": {
              "name": "additional-unattend-content",
              "description": "Commands to configure additional-unattend-content of vm in config file.",
              "fullName": "vm config additional-unattend-content",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set additional-unattend-content in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"additionalUnattendContent\" : {\r\n             \"passName\":null,\r\n             \"componentName\":null,\r\n             \"settingName\":null,\r\n             \"content\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config additional-unattend-content set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--pass-name <passName>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--pass-name",
                      "description": "Set the pass-name value."
                    },
                    {
                      "flags": "--component-name <componentName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--component-name",
                      "description": "Set the component-name value."
                    },
                    {
                      "flags": "--setting-name <settingName>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--setting-name",
                      "description": "Set the setting-name value."
                    },
                    {
                      "flags": "--content <content>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--content",
                      "description": "Set the content value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove additional-unattend-content in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"additionalUnattendContent\" : {\r\n             \"passName\":null,\r\n             \"componentName\":null,\r\n             \"settingName\":null,\r\n             \"content\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config additional-unattend-content delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--pass-name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--pass-name",
                      "description": "Remove the pass-name value."
                    },
                    {
                      "flags": "--component-name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--component-name",
                      "description": "Remove the component-name value."
                    },
                    {
                      "flags": "--setting-name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--setting-name",
                      "description": "Remove the setting-name value."
                    },
                    {
                      "flags": "--content",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--content",
                      "description": "Remove the content value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "win-rm": {
              "name": "win-rm",
              "description": "Commands to configure win-rm of vm in config file.",
              "fullName": "vm config win-rm",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set win-rm in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"winRM\" : {\r\n             \"listeners\":[\r\n               {\r\n                 \"protocol\":null,\r\n                 \"certificateUrl\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config win-rm set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--listeners <listeners>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--listeners",
                      "description": "Set the listeners value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove win-rm in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"winRM\" : {\r\n             \"listeners\":[\r\n               {\r\n                 \"protocol\":null,\r\n                 \"certificateUrl\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config win-rm delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--listeners",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--listeners",
                      "description": "Remove the listeners value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "listeners": {
              "name": "listeners",
              "description": "Commands to configure listeners of vm in config file.",
              "fullName": "vm config listeners",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set listeners in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"listeners\" : {\r\n             \"protocol\":null,\r\n             \"certificateUrl\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config listeners set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--protocol <protocol>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--protocol",
                      "description": "Set the protocol value."
                    },
                    {
                      "flags": "--certificate-url <certificateUrl>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--certificate-url",
                      "description": "Set the certificate-url value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove listeners in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"listeners\" : {\r\n             \"protocol\":null,\r\n             \"certificateUrl\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config listeners delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--protocol",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--protocol",
                      "description": "Remove the protocol value."
                    },
                    {
                      "flags": "--certificate-url",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--certificate-url",
                      "description": "Remove the certificate-url value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "linux-configuration": {
              "name": "linux-configuration",
              "description": "Commands to configure linux-configuration of vm in config file.",
              "fullName": "vm config linux-configuration",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set linux-configuration in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"linuxConfiguration\" : {\r\n             \"disablePasswordAuthentication\":null,\r\n             \"ssh\":{\r\n               \"publicKeys\":[\r\n                 {\r\n                   \"path\":\"\",\r\n                   \"keyData\":\"\"\r\n                 }\r\n               ]\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config linux-configuration set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--disable-password-authentication <disablePasswordAuthentication>",
                      "required": -35,
                      "optional": 0,
                      "bool": true,
                      "long": "--disable-password-authentication",
                      "description": "Set the disable-password-authentication value."
                    },
                    {
                      "flags": "--ssh <ssh>",
                      "required": -7,
                      "optional": 0,
                      "bool": true,
                      "long": "--ssh",
                      "description": "Set the ssh value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove linux-configuration in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"linuxConfiguration\" : {\r\n             \"disablePasswordAuthentication\":null,\r\n             \"ssh\":{\r\n               \"publicKeys\":[\r\n                 {\r\n                   \"path\":\"\",\r\n                   \"keyData\":\"\"\r\n                 }\r\n               ]\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config linux-configuration delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--disable-password-authentication",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--disable-password-authentication",
                      "description": "Remove the disable-password-authentication value."
                    },
                    {
                      "flags": "--ssh",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--ssh",
                      "description": "Remove the ssh value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "ssh": {
              "name": "ssh",
              "description": "Commands to configure ssh of vm in config file.",
              "fullName": "vm config ssh",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set ssh in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"ssh\" : {\r\n             \"publicKeys\":[\r\n               {\r\n                 \"path\":\"\",\r\n                 \"keyData\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config ssh set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--public-keys <publicKeys>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--public-keys",
                      "description": "Set the public-keys value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove ssh in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"ssh\" : {\r\n             \"publicKeys\":[\r\n               {\r\n                 \"path\":\"\",\r\n                 \"keyData\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config ssh delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--public-keys",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--public-keys",
                      "description": "Remove the public-keys value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "public-keys": {
              "name": "public-keys",
              "description": "Commands to configure public-keys of vm in config file.",
              "fullName": "vm config public-keys",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set public-keys in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"publicKeys\" : {\r\n             \"path\":\"\",\r\n             \"keyData\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config public-keys set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--path <path>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--path",
                      "description": "Set the path value."
                    },
                    {
                      "flags": "--key-data <keyData>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-data",
                      "description": "Set the key-data value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove public-keys in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"publicKeys\" : {\r\n             \"path\":\"\",\r\n             \"keyData\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config public-keys delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--path",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--path",
                      "description": "Remove the path value."
                    },
                    {
                      "flags": "--key-data",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-data",
                      "description": "Remove the key-data value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "secrets": {
              "name": "secrets",
              "description": "Commands to configure secrets of vm in config file.",
              "fullName": "vm config secrets",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set secrets in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"secrets\" : {\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"vaultCertificates\":[\r\n               {\r\n                 \"certificateUrl\":\"\",\r\n                 \"certificateStore\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config secrets set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--source-vault <sourceVault>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Set the source-vault value."
                    },
                    {
                      "flags": "--vault-certificates <vaultCertificates>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--vault-certificates",
                      "description": "Set the vault-certificates value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove secrets in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"secrets\" : {\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             },\r\n             \"vaultCertificates\":[\r\n               {\r\n                 \"certificateUrl\":\"\",\r\n                 \"certificateStore\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config secrets delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--source-vault",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Remove the source-vault value."
                    },
                    {
                      "flags": "--vault-certificates",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--vault-certificates",
                      "description": "Remove the vault-certificates value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "secrets-source-vault": {
              "name": "secrets-source-vault",
              "description": "Commands to configure secrets-source-vault of vm in config file.",
              "fullName": "vm config secrets-source-vault",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set secrets-source-vault in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config secrets-source-vault set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--secrets-index <secrets-index>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--secrets-index",
                      "description": "Indexer: secrets-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove secrets-source-vault in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config secrets-source-vault delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--secrets-index <secrets-index>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--secrets-index",
                      "description": "Indexer: secrets-index."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "vault-certificates": {
              "name": "vault-certificates",
              "description": "Commands to configure vault-certificates of vm in config file.",
              "fullName": "vm config vault-certificates",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set vault-certificates in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"vaultCertificates\" : {\r\n             \"certificateUrl\":\"\",\r\n             \"certificateStore\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config vault-certificates set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--secrets-index <secrets-index>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--secrets-index",
                      "description": "Indexer: secrets-index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--certificate-url <certificateUrl>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--certificate-url",
                      "description": "Set the certificate-url value."
                    },
                    {
                      "flags": "--certificate-store <certificateStore>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "long": "--certificate-store",
                      "description": "Set the certificate-store value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove vault-certificates in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"vaultCertificates\" : {\r\n             \"certificateUrl\":\"\",\r\n             \"certificateStore\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config vault-certificates delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--secrets-index <secrets-index>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--secrets-index",
                      "description": "Indexer: secrets-index."
                    },
                    {
                      "flags": "--certificate-url",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--certificate-url",
                      "description": "Remove the certificate-url value."
                    },
                    {
                      "flags": "--certificate-store",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--certificate-store",
                      "description": "Remove the certificate-store value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "network-profile": {
              "name": "network-profile",
              "description": "Commands to configure network-profile of vm in config file.",
              "fullName": "vm config network-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set network-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"networkProfile\" : {\r\n             \"networkInterfaces\":[\r\n               {\r\n                 \"primary\":null,\r\n                 \"id\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config network-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--network-interfaces <networkInterfaces>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interfaces",
                      "description": "Set the network-interfaces value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove network-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"networkProfile\" : {\r\n             \"networkInterfaces\":[\r\n               {\r\n                 \"primary\":null,\r\n                 \"id\":\"\"\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config network-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--network-interfaces",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--network-interfaces",
                      "description": "Remove the network-interfaces value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "network-interfaces": {
              "name": "network-interfaces",
              "description": "Commands to configure network-interfaces of vm in config file.",
              "fullName": "vm config network-interfaces",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set network-interfaces in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"networkInterfaces\" : {\r\n             \"primary\":null,\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config network-interfaces set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--primary <primary>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--primary",
                      "description": "Set the primary value."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove network-interfaces in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"networkInterfaces\" : {\r\n             \"primary\":null,\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config network-interfaces delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--primary",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--primary",
                      "description": "Remove the primary value."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "diagnostics-profile": {
              "name": "diagnostics-profile",
              "description": "Commands to configure diagnostics-profile of vm in config file.",
              "fullName": "vm config diagnostics-profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set diagnostics-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"diagnosticsProfile\" : {\r\n             \"bootDiagnostics\":{\r\n               \"enabled\":null,\r\n               \"storageUri\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config diagnostics-profile set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--boot-diagnostics <bootDiagnostics>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--boot-diagnostics",
                      "description": "Set the boot-diagnostics value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove diagnostics-profile in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"diagnosticsProfile\" : {\r\n             \"bootDiagnostics\":{\r\n               \"enabled\":null,\r\n               \"storageUri\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config diagnostics-profile delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--boot-diagnostics",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--boot-diagnostics",
                      "description": "Remove the boot-diagnostics value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "boot-diagnostics": {
              "name": "boot-diagnostics",
              "description": "Commands to configure boot-diagnostics of vm in config file.",
              "fullName": "vm config boot-diagnostics",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set boot-diagnostics in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"bootDiagnostics\" : {\r\n             \"enabled\":null,\r\n             \"storageUri\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config boot-diagnostics set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--enabled <enabled>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--enabled",
                      "description": "Set the enabled value."
                    },
                    {
                      "flags": "--storage-uri <storageUri>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-uri",
                      "description": "Set the storage-uri value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove boot-diagnostics in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"bootDiagnostics\" : {\r\n             \"enabled\":null,\r\n             \"storageUri\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config boot-diagnostics delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--enabled",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--enabled",
                      "description": "Remove the enabled value."
                    },
                    {
                      "flags": "--storage-uri",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--storage-uri",
                      "description": "Remove the storage-uri value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "availability-set": {
              "name": "availability-set",
              "description": "Commands to configure availability-set of vm in config file.",
              "fullName": "vm config availability-set",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set availability-set in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"availabilitySet\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config availability-set set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove availability-set in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"availabilitySet\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config availability-set delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "instance-view": {
              "name": "instance-view",
              "description": "Commands to configure instance-view of vm in config file.",
              "fullName": "vm config instance-view",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set instance-view in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"instanceView\" : {\r\n             \"platformUpdateDomain\":null,\r\n             \"platformFaultDomain\":null,\r\n             \"rdpThumbPrint\":\"\",\r\n             \"vmAgent\":{\r\n               \"vmAgentVersion\":\"\",\r\n               \"extensionHandlers\":[\r\n                 {\r\n                   \"type\":\"\",\r\n                   \"typeHandlerVersion\":\"\",\r\n                   \"status\":{\r\n                     \"code\":\"\",\r\n                     \"level\":null,\r\n                     \"displayStatus\":\"\",\r\n                     \"message\":\"\",\r\n                     \"time\":null\r\n                   }\r\n                 }\r\n               ],\r\n               \"statuses\":[\r\n                 {\r\n                   \"code\":\"\",\r\n                   \"level\":null,\r\n                   \"displayStatus\":\"\",\r\n                   \"message\":\"\",\r\n                   \"time\":null\r\n                 }\r\n               ]\r\n             },\r\n             \"maintenanceRedeployStatus\":{\r\n               \"isCustomerInitiatedMaintenanceAllowed\":null,\r\n               \"preMaintenanceWindowStartTime\":null,\r\n               \"preMaintenanceWindowEndTime\":null,\r\n               \"maintenanceWindowStartTime\":null,\r\n               \"maintenanceWindowEndTime\":null,\r\n               \"lastOperationResultCode\":null,\r\n               \"lastOperationMessage\":\"\"\r\n             },\r\n             \"disks\":[\r\n               {\r\n                 \"name\":\"\",\r\n                 \"encryptionSettings\":[\r\n                   {\r\n                     \"diskEncryptionKey\":{\r\n                       \"secretUrl\":\"\",\r\n                       \"sourceVault\":{\r\n                         \"id\":\"\"\r\n                       }\r\n                     },\r\n                     \"keyEncryptionKey\":{\r\n                       \"keyUrl\":\"\",\r\n                       \"sourceVault\":{\r\n                         \"id\":\"\"\r\n                       }\r\n                     },\r\n                     \"enabled\":null\r\n                   }\r\n                 ],\r\n                 \"statuses\":[\r\n                   {\r\n                     \"code\":\"\",\r\n                     \"level\":null,\r\n                     \"displayStatus\":\"\",\r\n                     \"message\":\"\",\r\n                     \"time\":null\r\n                   }\r\n                 ]\r\n               }\r\n             ],\r\n             \"extensions\":[\r\n               {\r\n                 \"name\":\"\",\r\n                 \"type\":\"\",\r\n                 \"typeHandlerVersion\":\"\",\r\n                 \"substatuses\":[\r\n                   {\r\n                     \"code\":\"\",\r\n                     \"level\":null,\r\n                     \"displayStatus\":\"\",\r\n                     \"message\":\"\",\r\n                     \"time\":null\r\n                   }\r\n                 ],\r\n                 \"statuses\":[\r\n                   {\r\n                     \"code\":\"\",\r\n                     \"level\":null,\r\n                     \"displayStatus\":\"\",\r\n                     \"message\":\"\",\r\n                     \"time\":null\r\n                   }\r\n                 ]\r\n               }\r\n             ],\r\n             \"bootDiagnostics\":{\r\n               \"consoleScreenshotBlobUri\":\"\",\r\n               \"serialConsoleLogBlobUri\":\"\"\r\n             },\r\n             \"statuses\":[\r\n               {\r\n                 \"code\":\"\",\r\n                 \"level\":null,\r\n                 \"displayStatus\":\"\",\r\n                 \"message\":\"\",\r\n                 \"time\":null\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config instance-view set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--platform-update-domain <platformUpdateDomain>",
                      "required": -26,
                      "optional": 0,
                      "bool": true,
                      "long": "--platform-update-domain",
                      "description": "Set the platform-update-domain value."
                    },
                    {
                      "flags": "--platform-fault-domain <platformFaultDomain>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "long": "--platform-fault-domain",
                      "description": "Set the platform-fault-domain value."
                    },
                    {
                      "flags": "--rdp-thumb-print <rdpThumbPrint>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--rdp-thumb-print",
                      "description": "Set the rdp-thumb-print value."
                    },
                    {
                      "flags": "--vm-agent <vmAgent>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--vm-agent",
                      "description": "Set the vm-agent value."
                    },
                    {
                      "flags": "--maintenance-redeploy-status <maintenanceRedeployStatus>",
                      "required": -31,
                      "optional": 0,
                      "bool": true,
                      "long": "--maintenance-redeploy-status",
                      "description": "Set the maintenance-redeploy-status value."
                    },
                    {
                      "flags": "--disks <disks>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--disks",
                      "description": "Set the disks value."
                    },
                    {
                      "flags": "--extensions <extensions>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--extensions",
                      "description": "Set the extensions value."
                    },
                    {
                      "flags": "--boot-diagnostics <bootDiagnostics>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--boot-diagnostics",
                      "description": "Set the boot-diagnostics value."
                    },
                    {
                      "flags": "--statuses <statuses>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--statuses",
                      "description": "Set the statuses value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove instance-view in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"instanceView\" : {\r\n             \"platformUpdateDomain\":null,\r\n             \"platformFaultDomain\":null,\r\n             \"rdpThumbPrint\":\"\",\r\n             \"vmAgent\":{\r\n               \"vmAgentVersion\":\"\",\r\n               \"extensionHandlers\":[\r\n                 {\r\n                   \"type\":\"\",\r\n                   \"typeHandlerVersion\":\"\",\r\n                   \"status\":{\r\n                     \"code\":\"\",\r\n                     \"level\":null,\r\n                     \"displayStatus\":\"\",\r\n                     \"message\":\"\",\r\n                     \"time\":null\r\n                   }\r\n                 }\r\n               ],\r\n               \"statuses\":[\r\n                 {\r\n                   \"code\":\"\",\r\n                   \"level\":null,\r\n                   \"displayStatus\":\"\",\r\n                   \"message\":\"\",\r\n                   \"time\":null\r\n                 }\r\n               ]\r\n             },\r\n             \"maintenanceRedeployStatus\":{\r\n               \"isCustomerInitiatedMaintenanceAllowed\":null,\r\n               \"preMaintenanceWindowStartTime\":null,\r\n               \"preMaintenanceWindowEndTime\":null,\r\n               \"maintenanceWindowStartTime\":null,\r\n               \"maintenanceWindowEndTime\":null,\r\n               \"lastOperationResultCode\":null,\r\n               \"lastOperationMessage\":\"\"\r\n             },\r\n             \"disks\":[\r\n               {\r\n                 \"name\":\"\",\r\n                 \"encryptionSettings\":[\r\n                   {\r\n                     \"diskEncryptionKey\":{\r\n                       \"secretUrl\":\"\",\r\n                       \"sourceVault\":{\r\n                         \"id\":\"\"\r\n                       }\r\n                     },\r\n                     \"keyEncryptionKey\":{\r\n                       \"keyUrl\":\"\",\r\n                       \"sourceVault\":{\r\n                         \"id\":\"\"\r\n                       }\r\n                     },\r\n                     \"enabled\":null\r\n                   }\r\n                 ],\r\n                 \"statuses\":[\r\n                   {\r\n                     \"code\":\"\",\r\n                     \"level\":null,\r\n                     \"displayStatus\":\"\",\r\n                     \"message\":\"\",\r\n                     \"time\":null\r\n                   }\r\n                 ]\r\n               }\r\n             ],\r\n             \"extensions\":[\r\n               {\r\n                 \"name\":\"\",\r\n                 \"type\":\"\",\r\n                 \"typeHandlerVersion\":\"\",\r\n                 \"substatuses\":[\r\n                   {\r\n                     \"code\":\"\",\r\n                     \"level\":null,\r\n                     \"displayStatus\":\"\",\r\n                     \"message\":\"\",\r\n                     \"time\":null\r\n                   }\r\n                 ],\r\n                 \"statuses\":[\r\n                   {\r\n                     \"code\":\"\",\r\n                     \"level\":null,\r\n                     \"displayStatus\":\"\",\r\n                     \"message\":\"\",\r\n                     \"time\":null\r\n                   }\r\n                 ]\r\n               }\r\n             ],\r\n             \"bootDiagnostics\":{\r\n               \"consoleScreenshotBlobUri\":\"\",\r\n               \"serialConsoleLogBlobUri\":\"\"\r\n             },\r\n             \"statuses\":[\r\n               {\r\n                 \"code\":\"\",\r\n                 \"level\":null,\r\n                 \"displayStatus\":\"\",\r\n                 \"message\":\"\",\r\n                 \"time\":null\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config instance-view delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--platform-update-domain",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--platform-update-domain",
                      "description": "Remove the platform-update-domain value."
                    },
                    {
                      "flags": "--platform-fault-domain",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--platform-fault-domain",
                      "description": "Remove the platform-fault-domain value."
                    },
                    {
                      "flags": "--rdp-thumb-print",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--rdp-thumb-print",
                      "description": "Remove the rdp-thumb-print value."
                    },
                    {
                      "flags": "--vm-agent",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--vm-agent",
                      "description": "Remove the vm-agent value."
                    },
                    {
                      "flags": "--maintenance-redeploy-status",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--maintenance-redeploy-status",
                      "description": "Remove the maintenance-redeploy-status value."
                    },
                    {
                      "flags": "--disks",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--disks",
                      "description": "Remove the disks value."
                    },
                    {
                      "flags": "--extensions",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--extensions",
                      "description": "Remove the extensions value."
                    },
                    {
                      "flags": "--boot-diagnostics",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--boot-diagnostics",
                      "description": "Remove the boot-diagnostics value."
                    },
                    {
                      "flags": "--statuses",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--statuses",
                      "description": "Remove the statuses value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "vm-agent": {
              "name": "vm-agent",
              "description": "Commands to configure vm-agent of vm in config file.",
              "fullName": "vm config vm-agent",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set vm-agent in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"vmAgent\" : {\r\n             \"vmAgentVersion\":\"\",\r\n             \"extensionHandlers\":[\r\n               {\r\n                 \"type\":\"\",\r\n                 \"typeHandlerVersion\":\"\",\r\n                 \"status\":{\r\n                   \"code\":\"\",\r\n                   \"level\":null,\r\n                   \"displayStatus\":\"\",\r\n                   \"message\":\"\",\r\n                   \"time\":null\r\n                 }\r\n               }\r\n             ],\r\n             \"statuses\":[\r\n               {\r\n                 \"code\":\"\",\r\n                 \"level\":null,\r\n                 \"displayStatus\":\"\",\r\n                 \"message\":\"\",\r\n                 \"time\":null\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config vm-agent set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--vm-agent-version <vmAgentVersion>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--vm-agent-version",
                      "description": "Set the vm-agent-version value."
                    },
                    {
                      "flags": "--extension-handlers <extensionHandlers>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--extension-handlers",
                      "description": "Set the extension-handlers value."
                    },
                    {
                      "flags": "--statuses <statuses>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--statuses",
                      "description": "Set the statuses value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove vm-agent in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"vmAgent\" : {\r\n             \"vmAgentVersion\":\"\",\r\n             \"extensionHandlers\":[\r\n               {\r\n                 \"type\":\"\",\r\n                 \"typeHandlerVersion\":\"\",\r\n                 \"status\":{\r\n                   \"code\":\"\",\r\n                   \"level\":null,\r\n                   \"displayStatus\":\"\",\r\n                   \"message\":\"\",\r\n                   \"time\":null\r\n                 }\r\n               }\r\n             ],\r\n             \"statuses\":[\r\n               {\r\n                 \"code\":\"\",\r\n                 \"level\":null,\r\n                 \"displayStatus\":\"\",\r\n                 \"message\":\"\",\r\n                 \"time\":null\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config vm-agent delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--vm-agent-version",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--vm-agent-version",
                      "description": "Remove the vm-agent-version value."
                    },
                    {
                      "flags": "--extension-handlers",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--extension-handlers",
                      "description": "Remove the extension-handlers value."
                    },
                    {
                      "flags": "--statuses",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--statuses",
                      "description": "Remove the statuses value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "extension-handlers": {
              "name": "extension-handlers",
              "description": "Commands to configure extension-handlers of vm in config file.",
              "fullName": "vm config extension-handlers",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set extension-handlers in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"extensionHandlers\" : {\r\n             \"type\":\"\",\r\n             \"typeHandlerVersion\":\"\",\r\n             \"status\":{\r\n               \"code\":\"\",\r\n               \"level\":null,\r\n               \"displayStatus\":\"\",\r\n               \"message\":\"\",\r\n               \"time\":null\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config extension-handlers set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--type <type>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Set the type value."
                    },
                    {
                      "flags": "--type-handler-version <typeHandlerVersion>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "long": "--type-handler-version",
                      "description": "Set the type-handler-version value."
                    },
                    {
                      "flags": "--status <status>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--status",
                      "description": "Set the status value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove extension-handlers in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"extensionHandlers\" : {\r\n             \"type\":\"\",\r\n             \"typeHandlerVersion\":\"\",\r\n             \"status\":{\r\n               \"code\":\"\",\r\n               \"level\":null,\r\n               \"displayStatus\":\"\",\r\n               \"message\":\"\",\r\n               \"time\":null\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config extension-handlers delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Remove the type value."
                    },
                    {
                      "flags": "--type-handler-version",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type-handler-version",
                      "description": "Remove the type-handler-version value."
                    },
                    {
                      "flags": "--status",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--status",
                      "description": "Remove the status value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "status": {
              "name": "status",
              "description": "Commands to configure status of vm in config file.",
              "fullName": "vm config status",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set status in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"status\" : {\r\n             \"code\":\"\",\r\n             \"level\":null,\r\n             \"displayStatus\":\"\",\r\n             \"message\":\"\",\r\n             \"time\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config status set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--extension-handlers-index <extension-handlers-index>",
                      "required": -28,
                      "optional": 0,
                      "bool": true,
                      "long": "--extension-handlers-index",
                      "description": "Indexer: extension-handlers-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--code <code>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--code",
                      "description": "Set the code value."
                    },
                    {
                      "flags": "--level <level>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--level",
                      "description": "Set the level value."
                    },
                    {
                      "flags": "--display-status <displayStatus>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--display-status",
                      "description": "Set the display-status value."
                    },
                    {
                      "flags": "--message <message>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--message",
                      "description": "Set the message value."
                    },
                    {
                      "flags": "--time <time>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--time",
                      "description": "Set the time value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove status in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"status\" : {\r\n             \"code\":\"\",\r\n             \"level\":null,\r\n             \"displayStatus\":\"\",\r\n             \"message\":\"\",\r\n             \"time\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config status delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--extension-handlers-index <extension-handlers-index>",
                      "required": -28,
                      "optional": 0,
                      "bool": true,
                      "long": "--extension-handlers-index",
                      "description": "Indexer: extension-handlers-index."
                    },
                    {
                      "flags": "--code",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--code",
                      "description": "Remove the code value."
                    },
                    {
                      "flags": "--level",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--level",
                      "description": "Remove the level value."
                    },
                    {
                      "flags": "--display-status",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--display-status",
                      "description": "Remove the display-status value."
                    },
                    {
                      "flags": "--message",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--message",
                      "description": "Remove the message value."
                    },
                    {
                      "flags": "--time",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--time",
                      "description": "Remove the time value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "statuses": {
              "name": "statuses",
              "description": "Commands to configure statuses of vm in config file.",
              "fullName": "vm config statuses",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set statuses in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"statuses\" : {\r\n             \"code\":\"\",\r\n             \"level\":null,\r\n             \"displayStatus\":\"\",\r\n             \"message\":\"\",\r\n             \"time\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config statuses set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--code <code>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--code",
                      "description": "Set the code value."
                    },
                    {
                      "flags": "--level <level>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--level",
                      "description": "Set the level value."
                    },
                    {
                      "flags": "--display-status <displayStatus>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--display-status",
                      "description": "Set the display-status value."
                    },
                    {
                      "flags": "--message <message>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--message",
                      "description": "Set the message value."
                    },
                    {
                      "flags": "--time <time>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--time",
                      "description": "Set the time value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove statuses in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"statuses\" : {\r\n             \"code\":\"\",\r\n             \"level\":null,\r\n             \"displayStatus\":\"\",\r\n             \"message\":\"\",\r\n             \"time\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config statuses delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--code",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--code",
                      "description": "Remove the code value."
                    },
                    {
                      "flags": "--level",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--level",
                      "description": "Remove the level value."
                    },
                    {
                      "flags": "--display-status",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--display-status",
                      "description": "Remove the display-status value."
                    },
                    {
                      "flags": "--message",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--message",
                      "description": "Remove the message value."
                    },
                    {
                      "flags": "--time",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--time",
                      "description": "Remove the time value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "maintenance-redeploy-status": {
              "name": "maintenance-redeploy-status",
              "description": "Commands to configure maintenance-redeploy-status of vm in config file.",
              "fullName": "vm config maintenance-redeploy-status",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set maintenance-redeploy-status in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"maintenanceRedeployStatus\" : {\r\n             \"isCustomerInitiatedMaintenanceAllowed\":null,\r\n             \"preMaintenanceWindowStartTime\":null,\r\n             \"preMaintenanceWindowEndTime\":null,\r\n             \"maintenanceWindowStartTime\":null,\r\n             \"maintenanceWindowEndTime\":null,\r\n             \"lastOperationResultCode\":null,\r\n             \"lastOperationMessage\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config maintenance-redeploy-status set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--is-customer-initiated-maintenance-allowed <isCustomerInitiatedMaintenanceAllowed>",
                      "required": -45,
                      "optional": 0,
                      "bool": true,
                      "long": "--is-customer-initiated-maintenance-allowed",
                      "description": "Set the is-customer-initiated-maintenance-allowed value."
                    },
                    {
                      "flags": "--pre-maintenance-window-start-time <preMaintenanceWindowStartTime>",
                      "required": -37,
                      "optional": 0,
                      "bool": true,
                      "long": "--pre-maintenance-window-start-time",
                      "description": "Set the pre-maintenance-window-start-time value."
                    },
                    {
                      "flags": "--pre-maintenance-window-end-time <preMaintenanceWindowEndTime>",
                      "required": -35,
                      "optional": 0,
                      "bool": true,
                      "long": "--pre-maintenance-window-end-time",
                      "description": "Set the pre-maintenance-window-end-time value."
                    },
                    {
                      "flags": "--maintenance-window-start-time <maintenanceWindowStartTime>",
                      "required": -33,
                      "optional": 0,
                      "bool": true,
                      "long": "--maintenance-window-start-time",
                      "description": "Set the maintenance-window-start-time value."
                    },
                    {
                      "flags": "--maintenance-window-end-time <maintenanceWindowEndTime>",
                      "required": -31,
                      "optional": 0,
                      "bool": true,
                      "long": "--maintenance-window-end-time",
                      "description": "Set the maintenance-window-end-time value."
                    },
                    {
                      "flags": "--last-operation-result-code <lastOperationResultCode>",
                      "required": -30,
                      "optional": 0,
                      "bool": true,
                      "long": "--last-operation-result-code",
                      "description": "Set the last-operation-result-code value."
                    },
                    {
                      "flags": "--last-operation-message <lastOperationMessage>",
                      "required": -26,
                      "optional": 0,
                      "bool": true,
                      "long": "--last-operation-message",
                      "description": "Set the last-operation-message value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove maintenance-redeploy-status in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"maintenanceRedeployStatus\" : {\r\n             \"isCustomerInitiatedMaintenanceAllowed\":null,\r\n             \"preMaintenanceWindowStartTime\":null,\r\n             \"preMaintenanceWindowEndTime\":null,\r\n             \"maintenanceWindowStartTime\":null,\r\n             \"maintenanceWindowEndTime\":null,\r\n             \"lastOperationResultCode\":null,\r\n             \"lastOperationMessage\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config maintenance-redeploy-status delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--is-customer-initiated-maintenance-allowed",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--is-customer-initiated-maintenance-allowed",
                      "description": "Remove the is-customer-initiated-maintenance-allowed value."
                    },
                    {
                      "flags": "--pre-maintenance-window-start-time",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--pre-maintenance-window-start-time",
                      "description": "Remove the pre-maintenance-window-start-time value."
                    },
                    {
                      "flags": "--pre-maintenance-window-end-time",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--pre-maintenance-window-end-time",
                      "description": "Remove the pre-maintenance-window-end-time value."
                    },
                    {
                      "flags": "--maintenance-window-start-time",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--maintenance-window-start-time",
                      "description": "Remove the maintenance-window-start-time value."
                    },
                    {
                      "flags": "--maintenance-window-end-time",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--maintenance-window-end-time",
                      "description": "Remove the maintenance-window-end-time value."
                    },
                    {
                      "flags": "--last-operation-result-code",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--last-operation-result-code",
                      "description": "Remove the last-operation-result-code value."
                    },
                    {
                      "flags": "--last-operation-message",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--last-operation-message",
                      "description": "Remove the last-operation-message value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "disks": {
              "name": "disks",
              "description": "Commands to configure disks of vm in config file.",
              "fullName": "vm config disks",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set disks in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"disks\" : {\r\n             \"name\":\"\",\r\n             \"encryptionSettings\":[\r\n               {\r\n                 \"diskEncryptionKey\":{\r\n                   \"secretUrl\":\"\",\r\n                   \"sourceVault\":{\r\n                     \"id\":\"\"\r\n                   }\r\n                 },\r\n                 \"keyEncryptionKey\":{\r\n                   \"keyUrl\":\"\",\r\n                   \"sourceVault\":{\r\n                     \"id\":\"\"\r\n                   }\r\n                 },\r\n                 \"enabled\":null\r\n               }\r\n             ],\r\n             \"statuses\":[\r\n               {\r\n                 \"code\":\"\",\r\n                 \"level\":null,\r\n                 \"displayStatus\":\"\",\r\n                 \"message\":\"\",\r\n                 \"time\":null\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config disks set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--encryption-settings <encryptionSettings>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "long": "--encryption-settings",
                      "description": "Set the encryption-settings value."
                    },
                    {
                      "flags": "--statuses <statuses>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--statuses",
                      "description": "Set the statuses value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove disks in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"disks\" : {\r\n             \"name\":\"\",\r\n             \"encryptionSettings\":[\r\n               {\r\n                 \"diskEncryptionKey\":{\r\n                   \"secretUrl\":\"\",\r\n                   \"sourceVault\":{\r\n                     \"id\":\"\"\r\n                   }\r\n                 },\r\n                 \"keyEncryptionKey\":{\r\n                   \"keyUrl\":\"\",\r\n                   \"sourceVault\":{\r\n                     \"id\":\"\"\r\n                   }\r\n                 },\r\n                 \"enabled\":null\r\n               }\r\n             ],\r\n             \"statuses\":[\r\n               {\r\n                 \"code\":\"\",\r\n                 \"level\":null,\r\n                 \"displayStatus\":\"\",\r\n                 \"message\":\"\",\r\n                 \"time\":null\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config disks delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--encryption-settings",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--encryption-settings",
                      "description": "Remove the encryption-settings value."
                    },
                    {
                      "flags": "--statuses",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--statuses",
                      "description": "Remove the statuses value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "disks-encryption-settings": {
              "name": "disks-encryption-settings",
              "description": "Commands to configure disks-encryption-settings of vm in config file.",
              "fullName": "vm config disks-encryption-settings",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set disks-encryption-settings in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"encryptionSettings\" : {\r\n             \"diskEncryptionKey\":{\r\n               \"secretUrl\":\"\",\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               }\r\n             },\r\n             \"keyEncryptionKey\":{\r\n               \"keyUrl\":\"\",\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               }\r\n             },\r\n             \"enabled\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config disks-encryption-settings set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--disks-index <disks-index>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--disks-index",
                      "description": "Indexer: disks-index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--disk-encryption-key <diskEncryptionKey>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-encryption-key",
                      "description": "Set the disk-encryption-key value."
                    },
                    {
                      "flags": "--key-encryption-key <keyEncryptionKey>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-encryption-key",
                      "description": "Set the key-encryption-key value."
                    },
                    {
                      "flags": "--enabled <enabled>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--enabled",
                      "description": "Set the enabled value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove disks-encryption-settings in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"encryptionSettings\" : {\r\n             \"diskEncryptionKey\":{\r\n               \"secretUrl\":\"\",\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               }\r\n             },\r\n             \"keyEncryptionKey\":{\r\n               \"keyUrl\":\"\",\r\n               \"sourceVault\":{\r\n                 \"id\":\"\"\r\n               }\r\n             },\r\n             \"enabled\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config disks-encryption-settings delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--disks-index <disks-index>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--disks-index",
                      "description": "Indexer: disks-index."
                    },
                    {
                      "flags": "--disk-encryption-key",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--disk-encryption-key",
                      "description": "Remove the disk-encryption-key value."
                    },
                    {
                      "flags": "--key-encryption-key",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-encryption-key",
                      "description": "Remove the key-encryption-key value."
                    },
                    {
                      "flags": "--enabled",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--enabled",
                      "description": "Remove the enabled value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "encryption-settings-disk-encryption-key": {
              "name": "encryption-settings-disk-encryption-key",
              "description": "Commands to configure encryption-settings-disk-encryption-key of vm in config file.",
              "fullName": "vm config encryption-settings-disk-encryption-key",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set encryption-settings-disk-encryption-key in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"diskEncryptionKey\" : {\r\n             \"secretUrl\":\"\",\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config encryption-settings-disk-encryption-key set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--encryption-settings-index <encryption-settings-index>",
                      "required": -29,
                      "optional": 0,
                      "bool": true,
                      "long": "--encryption-settings-index",
                      "description": "Indexer: encryption-settings-index."
                    },
                    {
                      "flags": "--disks-index <disks-index>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--disks-index",
                      "description": "Indexer: disks-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--secret-url <secretUrl>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--secret-url",
                      "description": "Set the secret-url value."
                    },
                    {
                      "flags": "--source-vault <sourceVault>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Set the source-vault value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove encryption-settings-disk-encryption-key in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"diskEncryptionKey\" : {\r\n             \"secretUrl\":\"\",\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config encryption-settings-disk-encryption-key delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--encryption-settings-index <encryption-settings-index>",
                      "required": -29,
                      "optional": 0,
                      "bool": true,
                      "long": "--encryption-settings-index",
                      "description": "Indexer: encryption-settings-index."
                    },
                    {
                      "flags": "--disks-index <disks-index>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--disks-index",
                      "description": "Indexer: disks-index."
                    },
                    {
                      "flags": "--secret-url",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--secret-url",
                      "description": "Remove the secret-url value."
                    },
                    {
                      "flags": "--source-vault",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Remove the source-vault value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "disk-encryption-key-source-vault": {
              "name": "disk-encryption-key-source-vault",
              "description": "Commands to configure disk-encryption-key-source-vault of vm in config file.",
              "fullName": "vm config disk-encryption-key-source-vault",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set disk-encryption-key-source-vault in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config disk-encryption-key-source-vault set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--encryption-settings-index <encryption-settings-index>",
                      "required": -29,
                      "optional": 0,
                      "bool": true,
                      "long": "--encryption-settings-index",
                      "description": "Indexer: encryption-settings-index."
                    },
                    {
                      "flags": "--disks-index <disks-index>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--disks-index",
                      "description": "Indexer: disks-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove disk-encryption-key-source-vault in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"sourceVault\" : {\r\n             \"id\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config disk-encryption-key-source-vault delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--encryption-settings-index <encryption-settings-index>",
                      "required": -29,
                      "optional": 0,
                      "bool": true,
                      "long": "--encryption-settings-index",
                      "description": "Indexer: encryption-settings-index."
                    },
                    {
                      "flags": "--disks-index <disks-index>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--disks-index",
                      "description": "Indexer: disks-index."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "encryption-settings-key-encryption-key": {
              "name": "encryption-settings-key-encryption-key",
              "description": "Commands to configure encryption-settings-key-encryption-key of vm in config file.",
              "fullName": "vm config encryption-settings-key-encryption-key",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set encryption-settings-key-encryption-key in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"keyEncryptionKey\" : {\r\n             \"keyUrl\":\"\",\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config encryption-settings-key-encryption-key set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--encryption-settings-index <encryption-settings-index>",
                      "required": -29,
                      "optional": 0,
                      "bool": true,
                      "long": "--encryption-settings-index",
                      "description": "Indexer: encryption-settings-index."
                    },
                    {
                      "flags": "--disks-index <disks-index>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--disks-index",
                      "description": "Indexer: disks-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--key-url <keyUrl>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-url",
                      "description": "Set the key-url value."
                    },
                    {
                      "flags": "--source-vault <sourceVault>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Set the source-vault value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove encryption-settings-key-encryption-key in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"keyEncryptionKey\" : {\r\n             \"keyUrl\":\"\",\r\n             \"sourceVault\":{\r\n               \"id\":\"\"\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config encryption-settings-key-encryption-key delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--encryption-settings-index <encryption-settings-index>",
                      "required": -29,
                      "optional": 0,
                      "bool": true,
                      "long": "--encryption-settings-index",
                      "description": "Indexer: encryption-settings-index."
                    },
                    {
                      "flags": "--disks-index <disks-index>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--disks-index",
                      "description": "Indexer: disks-index."
                    },
                    {
                      "flags": "--key-url",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-url",
                      "description": "Remove the key-url value."
                    },
                    {
                      "flags": "--source-vault",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--source-vault",
                      "description": "Remove the source-vault value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "disks-statuses": {
              "name": "disks-statuses",
              "description": "Commands to configure disks-statuses of vm in config file.",
              "fullName": "vm config disks-statuses",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set disks-statuses in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"statuses\" : {\r\n             \"code\":\"\",\r\n             \"level\":null,\r\n             \"displayStatus\":\"\",\r\n             \"message\":\"\",\r\n             \"time\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config disks-statuses set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--disks-index <disks-index>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--disks-index",
                      "description": "Indexer: disks-index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--code <code>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--code",
                      "description": "Set the code value."
                    },
                    {
                      "flags": "--level <level>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--level",
                      "description": "Set the level value."
                    },
                    {
                      "flags": "--display-status <displayStatus>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--display-status",
                      "description": "Set the display-status value."
                    },
                    {
                      "flags": "--message <message>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--message",
                      "description": "Set the message value."
                    },
                    {
                      "flags": "--time <time>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--time",
                      "description": "Set the time value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove disks-statuses in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"statuses\" : {\r\n             \"code\":\"\",\r\n             \"level\":null,\r\n             \"displayStatus\":\"\",\r\n             \"message\":\"\",\r\n             \"time\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config disks-statuses delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--disks-index <disks-index>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--disks-index",
                      "description": "Indexer: disks-index."
                    },
                    {
                      "flags": "--code",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--code",
                      "description": "Remove the code value."
                    },
                    {
                      "flags": "--level",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--level",
                      "description": "Remove the level value."
                    },
                    {
                      "flags": "--display-status",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--display-status",
                      "description": "Remove the display-status value."
                    },
                    {
                      "flags": "--message",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--message",
                      "description": "Remove the message value."
                    },
                    {
                      "flags": "--time",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--time",
                      "description": "Remove the time value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "extensions": {
              "name": "extensions",
              "description": "Commands to configure extensions of vm in config file.",
              "fullName": "vm config extensions",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set extensions in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"extensions\" : {\r\n             \"name\":\"\",\r\n             \"type\":\"\",\r\n             \"typeHandlerVersion\":\"\",\r\n             \"substatuses\":[\r\n               {\r\n                 \"code\":\"\",\r\n                 \"level\":null,\r\n                 \"displayStatus\":\"\",\r\n                 \"message\":\"\",\r\n                 \"time\":null\r\n               }\r\n             ],\r\n             \"statuses\":[\r\n               {\r\n                 \"code\":\"\",\r\n                 \"level\":null,\r\n                 \"displayStatus\":\"\",\r\n                 \"message\":\"\",\r\n                 \"time\":null\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config extensions set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--type <type>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Set the type value."
                    },
                    {
                      "flags": "--type-handler-version <typeHandlerVersion>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "long": "--type-handler-version",
                      "description": "Set the type-handler-version value."
                    },
                    {
                      "flags": "--substatuses <substatuses>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--substatuses",
                      "description": "Set the substatuses value."
                    },
                    {
                      "flags": "--statuses <statuses>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--statuses",
                      "description": "Set the statuses value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove extensions in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"extensions\" : {\r\n             \"name\":\"\",\r\n             \"type\":\"\",\r\n             \"typeHandlerVersion\":\"\",\r\n             \"substatuses\":[\r\n               {\r\n                 \"code\":\"\",\r\n                 \"level\":null,\r\n                 \"displayStatus\":\"\",\r\n                 \"message\":\"\",\r\n                 \"time\":null\r\n               }\r\n             ],\r\n             \"statuses\":[\r\n               {\r\n                 \"code\":\"\",\r\n                 \"level\":null,\r\n                 \"displayStatus\":\"\",\r\n                 \"message\":\"\",\r\n                 \"time\":null\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config extensions delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Remove the type value."
                    },
                    {
                      "flags": "--type-handler-version",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type-handler-version",
                      "description": "Remove the type-handler-version value."
                    },
                    {
                      "flags": "--substatuses",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--substatuses",
                      "description": "Remove the substatuses value."
                    },
                    {
                      "flags": "--statuses",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--statuses",
                      "description": "Remove the statuses value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "substatuses": {
              "name": "substatuses",
              "description": "Commands to configure substatuses of vm in config file.",
              "fullName": "vm config substatuses",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set substatuses in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"substatuses\" : {\r\n             \"code\":\"\",\r\n             \"level\":null,\r\n             \"displayStatus\":\"\",\r\n             \"message\":\"\",\r\n             \"time\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config substatuses set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--extensions-index <extensions-index>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--extensions-index",
                      "description": "Indexer: extensions-index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--code <code>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--code",
                      "description": "Set the code value."
                    },
                    {
                      "flags": "--level <level>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--level",
                      "description": "Set the level value."
                    },
                    {
                      "flags": "--display-status <displayStatus>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--display-status",
                      "description": "Set the display-status value."
                    },
                    {
                      "flags": "--message <message>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--message",
                      "description": "Set the message value."
                    },
                    {
                      "flags": "--time <time>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--time",
                      "description": "Set the time value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove substatuses in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"substatuses\" : {\r\n             \"code\":\"\",\r\n             \"level\":null,\r\n             \"displayStatus\":\"\",\r\n             \"message\":\"\",\r\n             \"time\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config substatuses delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--extensions-index <extensions-index>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--extensions-index",
                      "description": "Indexer: extensions-index."
                    },
                    {
                      "flags": "--code",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--code",
                      "description": "Remove the code value."
                    },
                    {
                      "flags": "--level",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--level",
                      "description": "Remove the level value."
                    },
                    {
                      "flags": "--display-status",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--display-status",
                      "description": "Remove the display-status value."
                    },
                    {
                      "flags": "--message",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--message",
                      "description": "Remove the message value."
                    },
                    {
                      "flags": "--time",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--time",
                      "description": "Remove the time value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "extensions-statuses": {
              "name": "extensions-statuses",
              "description": "Commands to configure extensions-statuses of vm in config file.",
              "fullName": "vm config extensions-statuses",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set extensions-statuses in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"statuses\" : {\r\n             \"code\":\"\",\r\n             \"level\":null,\r\n             \"displayStatus\":\"\",\r\n             \"message\":\"\",\r\n             \"time\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config extensions-statuses set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--extensions-index <extensions-index>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--extensions-index",
                      "description": "Indexer: extensions-index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--code <code>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--code",
                      "description": "Set the code value."
                    },
                    {
                      "flags": "--level <level>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--level",
                      "description": "Set the level value."
                    },
                    {
                      "flags": "--display-status <displayStatus>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--display-status",
                      "description": "Set the display-status value."
                    },
                    {
                      "flags": "--message <message>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--message",
                      "description": "Set the message value."
                    },
                    {
                      "flags": "--time <time>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--time",
                      "description": "Set the time value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove extensions-statuses in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"statuses\" : {\r\n             \"code\":\"\",\r\n             \"level\":null,\r\n             \"displayStatus\":\"\",\r\n             \"message\":\"\",\r\n             \"time\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config extensions-statuses delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--extensions-index <extensions-index>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--extensions-index",
                      "description": "Indexer: extensions-index."
                    },
                    {
                      "flags": "--code",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--code",
                      "description": "Remove the code value."
                    },
                    {
                      "flags": "--level",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--level",
                      "description": "Remove the level value."
                    },
                    {
                      "flags": "--display-status",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--display-status",
                      "description": "Remove the display-status value."
                    },
                    {
                      "flags": "--message",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--message",
                      "description": "Remove the message value."
                    },
                    {
                      "flags": "--time",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--time",
                      "description": "Remove the time value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "instance-view-boot-diagnostics": {
              "name": "instance-view-boot-diagnostics",
              "description": "Commands to configure instance-view-boot-diagnostics of vm in config file.",
              "fullName": "vm config instance-view-boot-diagnostics",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set instance-view-boot-diagnostics in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"bootDiagnostics\" : {\r\n             \"consoleScreenshotBlobUri\":\"\",\r\n             \"serialConsoleLogBlobUri\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config instance-view-boot-diagnostics set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--console-screenshot-blob-uri <consoleScreenshotBlobUri>",
                      "required": -31,
                      "optional": 0,
                      "bool": true,
                      "long": "--console-screenshot-blob-uri",
                      "description": "Set the console-screenshot-blob-uri value."
                    },
                    {
                      "flags": "--serial-console-log-blob-uri <serialConsoleLogBlobUri>",
                      "required": -31,
                      "optional": 0,
                      "bool": true,
                      "long": "--serial-console-log-blob-uri",
                      "description": "Set the serial-console-log-blob-uri value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove instance-view-boot-diagnostics in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"bootDiagnostics\" : {\r\n             \"consoleScreenshotBlobUri\":\"\",\r\n             \"serialConsoleLogBlobUri\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config instance-view-boot-diagnostics delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--console-screenshot-blob-uri",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--console-screenshot-blob-uri",
                      "description": "Remove the console-screenshot-blob-uri value."
                    },
                    {
                      "flags": "--serial-console-log-blob-uri",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--serial-console-log-blob-uri",
                      "description": "Remove the serial-console-log-blob-uri value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "instance-view-statuses": {
              "name": "instance-view-statuses",
              "description": "Commands to configure instance-view-statuses of vm in config file.",
              "fullName": "vm config instance-view-statuses",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set instance-view-statuses in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"statuses\" : {\r\n             \"code\":\"\",\r\n             \"level\":null,\r\n             \"displayStatus\":\"\",\r\n             \"message\":\"\",\r\n             \"time\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config instance-view-statuses set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--resources-index <resources-index>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--resources-index",
                      "description": "Indexer: resources-index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--code <code>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--code",
                      "description": "Set the code value."
                    },
                    {
                      "flags": "--level <level>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--level",
                      "description": "Set the level value."
                    },
                    {
                      "flags": "--display-status <displayStatus>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--display-status",
                      "description": "Set the display-status value."
                    },
                    {
                      "flags": "--message <message>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--message",
                      "description": "Set the message value."
                    },
                    {
                      "flags": "--time <time>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--time",
                      "description": "Set the time value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove instance-view-statuses in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"statuses\" : {\r\n             \"code\":\"\",\r\n             \"level\":null,\r\n             \"displayStatus\":\"\",\r\n             \"message\":\"\",\r\n             \"time\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config instance-view-statuses delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--resources-index <resources-index>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--resources-index",
                      "description": "Indexer: resources-index."
                    },
                    {
                      "flags": "--code",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--code",
                      "description": "Remove the code value."
                    },
                    {
                      "flags": "--level",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--level",
                      "description": "Remove the level value."
                    },
                    {
                      "flags": "--display-status",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--display-status",
                      "description": "Remove the display-status value."
                    },
                    {
                      "flags": "--message",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--message",
                      "description": "Remove the message value."
                    },
                    {
                      "flags": "--time",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--time",
                      "description": "Remove the time value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "resources": {
              "name": "resources",
              "description": "Commands to configure resources of vm in config file.",
              "fullName": "vm config resources",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set resources in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"resources\" : {\r\n             \"forceUpdateTag\":\"\",\r\n             \"publisher\":\"\",\r\n             \"virtualMachineExtensionType\":\"\",\r\n             \"typeHandlerVersion\":\"\",\r\n             \"autoUpgradeMinorVersion\":null,\r\n             \"settings\":{\r\n             },\r\n             \"protectedSettings\":{\r\n             },\r\n             \"provisioningState\":\"\",\r\n             \"instanceView\":{\r\n               \"name\":\"\",\r\n               \"type\":\"\",\r\n               \"typeHandlerVersion\":\"\",\r\n               \"substatuses\":[\r\n                 {\r\n                   \"code\":\"\",\r\n                   \"level\":null,\r\n                   \"displayStatus\":\"\",\r\n                   \"message\":\"\",\r\n                   \"time\":null\r\n                 }\r\n               ],\r\n               \"statuses\":[\r\n                 {\r\n                   \"code\":\"\",\r\n                   \"level\":null,\r\n                   \"displayStatus\":\"\",\r\n                   \"message\":\"\",\r\n                   \"time\":null\r\n                 }\r\n               ]\r\n             },\r\n             \"id\":null,\r\n             \"name\":null,\r\n             \"type\":null,\r\n             \"location\":\"\",\r\n             \"tags\":{\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config resources set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--force-update-tag <forceUpdateTag>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "long": "--force-update-tag",
                      "description": "Set the force-update-tag value."
                    },
                    {
                      "flags": "--publisher <publisher>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--publisher",
                      "description": "Set the publisher value."
                    },
                    {
                      "flags": "--virtual-machine-extension-type <virtualMachineExtensionType>",
                      "required": -34,
                      "optional": 0,
                      "bool": true,
                      "long": "--virtual-machine-extension-type",
                      "description": "Set the virtual-machine-extension-type value."
                    },
                    {
                      "flags": "--type-handler-version <typeHandlerVersion>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "long": "--type-handler-version",
                      "description": "Set the type-handler-version value."
                    },
                    {
                      "flags": "--auto-upgrade-minor-version <autoUpgradeMinorVersion>",
                      "required": -30,
                      "optional": 0,
                      "bool": true,
                      "long": "--auto-upgrade-minor-version",
                      "description": "Set the auto-upgrade-minor-version value."
                    },
                    {
                      "flags": "--settings <settings>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--settings",
                      "description": "Set the settings value."
                    },
                    {
                      "flags": "--protected-settings <protectedSettings>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--protected-settings",
                      "description": "Set the protected-settings value."
                    },
                    {
                      "flags": "--provisioning-state <provisioningState>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "long": "--provisioning-state",
                      "description": "Set the provisioning-state value."
                    },
                    {
                      "flags": "--instance-view <instanceView>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "long": "--instance-view",
                      "description": "Set the instance-view value."
                    },
                    {
                      "flags": "--id <id>",
                      "required": -6,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Set the id value."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--type <type>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Set the type value."
                    },
                    {
                      "flags": "--location <location>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--location",
                      "description": "Set the location value."
                    },
                    {
                      "flags": "--tags <tags>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--tags",
                      "description": "Set the tags value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove resources in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"resources\" : {\r\n             \"forceUpdateTag\":\"\",\r\n             \"publisher\":\"\",\r\n             \"virtualMachineExtensionType\":\"\",\r\n             \"typeHandlerVersion\":\"\",\r\n             \"autoUpgradeMinorVersion\":null,\r\n             \"settings\":{\r\n             },\r\n             \"protectedSettings\":{\r\n             },\r\n             \"provisioningState\":\"\",\r\n             \"instanceView\":{\r\n               \"name\":\"\",\r\n               \"type\":\"\",\r\n               \"typeHandlerVersion\":\"\",\r\n               \"substatuses\":[\r\n                 {\r\n                   \"code\":\"\",\r\n                   \"level\":null,\r\n                   \"displayStatus\":\"\",\r\n                   \"message\":\"\",\r\n                   \"time\":null\r\n                 }\r\n               ],\r\n               \"statuses\":[\r\n                 {\r\n                   \"code\":\"\",\r\n                   \"level\":null,\r\n                   \"displayStatus\":\"\",\r\n                   \"message\":\"\",\r\n                   \"time\":null\r\n                 }\r\n               ]\r\n             },\r\n             \"id\":null,\r\n             \"name\":null,\r\n             \"type\":null,\r\n             \"location\":\"\",\r\n             \"tags\":{\r\n             }\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config resources delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--force-update-tag",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--force-update-tag",
                      "description": "Remove the force-update-tag value."
                    },
                    {
                      "flags": "--publisher",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--publisher",
                      "description": "Remove the publisher value."
                    },
                    {
                      "flags": "--virtual-machine-extension-type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--virtual-machine-extension-type",
                      "description": "Remove the virtual-machine-extension-type value."
                    },
                    {
                      "flags": "--type-handler-version",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type-handler-version",
                      "description": "Remove the type-handler-version value."
                    },
                    {
                      "flags": "--auto-upgrade-minor-version",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--auto-upgrade-minor-version",
                      "description": "Remove the auto-upgrade-minor-version value."
                    },
                    {
                      "flags": "--settings",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--settings",
                      "description": "Remove the settings value."
                    },
                    {
                      "flags": "--protected-settings",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--protected-settings",
                      "description": "Remove the protected-settings value."
                    },
                    {
                      "flags": "--provisioning-state",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--provisioning-state",
                      "description": "Remove the provisioning-state value."
                    },
                    {
                      "flags": "--instance-view",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--instance-view",
                      "description": "Remove the instance-view value."
                    },
                    {
                      "flags": "--id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--id",
                      "description": "Remove the id value."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Remove the type value."
                    },
                    {
                      "flags": "--location",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--location",
                      "description": "Remove the location value."
                    },
                    {
                      "flags": "--tags",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--tags",
                      "description": "Remove the tags value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "resources-instance-view": {
              "name": "resources-instance-view",
              "description": "Commands to configure resources-instance-view of vm in config file.",
              "fullName": "vm config resources-instance-view",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set resources-instance-view in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"instanceView\" : {\r\n             \"name\":\"\",\r\n             \"type\":\"\",\r\n             \"typeHandlerVersion\":\"\",\r\n             \"substatuses\":[\r\n               {\r\n                 \"code\":\"\",\r\n                 \"level\":null,\r\n                 \"displayStatus\":\"\",\r\n                 \"message\":\"\",\r\n                 \"time\":null\r\n               }\r\n             ],\r\n             \"statuses\":[\r\n               {\r\n                 \"code\":\"\",\r\n                 \"level\":null,\r\n                 \"displayStatus\":\"\",\r\n                 \"message\":\"\",\r\n                 \"time\":null\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config resources-instance-view set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--resources-index <resources-index>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--resources-index",
                      "description": "Indexer: resources-index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--type <type>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Set the type value."
                    },
                    {
                      "flags": "--type-handler-version <typeHandlerVersion>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "long": "--type-handler-version",
                      "description": "Set the type-handler-version value."
                    },
                    {
                      "flags": "--substatuses <substatuses>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "long": "--substatuses",
                      "description": "Set the substatuses value."
                    },
                    {
                      "flags": "--statuses <statuses>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--statuses",
                      "description": "Set the statuses value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove resources-instance-view in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"instanceView\" : {\r\n             \"name\":\"\",\r\n             \"type\":\"\",\r\n             \"typeHandlerVersion\":\"\",\r\n             \"substatuses\":[\r\n               {\r\n                 \"code\":\"\",\r\n                 \"level\":null,\r\n                 \"displayStatus\":\"\",\r\n                 \"message\":\"\",\r\n                 \"time\":null\r\n               }\r\n             ],\r\n             \"statuses\":[\r\n               {\r\n                 \"code\":\"\",\r\n                 \"level\":null,\r\n                 \"displayStatus\":\"\",\r\n                 \"message\":\"\",\r\n                 \"time\":null\r\n               }\r\n             ]\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config resources-instance-view delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--resources-index <resources-index>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--resources-index",
                      "description": "Indexer: resources-index."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Remove the type value."
                    },
                    {
                      "flags": "--type-handler-version",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type-handler-version",
                      "description": "Remove the type-handler-version value."
                    },
                    {
                      "flags": "--substatuses",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--substatuses",
                      "description": "Remove the substatuses value."
                    },
                    {
                      "flags": "--statuses",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--statuses",
                      "description": "Remove the statuses value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "instance-view-substatuses": {
              "name": "instance-view-substatuses",
              "description": "Commands to configure instance-view-substatuses of vm in config file.",
              "fullName": "vm config instance-view-substatuses",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set instance-view-substatuses in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"substatuses\" : {\r\n             \"code\":\"\",\r\n             \"level\":null,\r\n             \"displayStatus\":\"\",\r\n             \"message\":\"\",\r\n             \"time\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config instance-view-substatuses set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--resources-index <resources-index>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--resources-index",
                      "description": "Indexer: resources-index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--code <code>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--code",
                      "description": "Set the code value."
                    },
                    {
                      "flags": "--level <level>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--level",
                      "description": "Set the level value."
                    },
                    {
                      "flags": "--display-status <displayStatus>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--display-status",
                      "description": "Set the display-status value."
                    },
                    {
                      "flags": "--message <message>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "long": "--message",
                      "description": "Set the message value."
                    },
                    {
                      "flags": "--time <time>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--time",
                      "description": "Set the time value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove instance-view-substatuses in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"substatuses\" : {\r\n             \"code\":\"\",\r\n             \"level\":null,\r\n             \"displayStatus\":\"\",\r\n             \"message\":\"\",\r\n             \"time\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config instance-view-substatuses delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--resources-index <resources-index>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "long": "--resources-index",
                      "description": "Indexer: resources-index."
                    },
                    {
                      "flags": "--code",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--code",
                      "description": "Remove the code value."
                    },
                    {
                      "flags": "--level",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--level",
                      "description": "Remove the level value."
                    },
                    {
                      "flags": "--display-status",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--display-status",
                      "description": "Remove the display-status value."
                    },
                    {
                      "flags": "--message",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--message",
                      "description": "Remove the message value."
                    },
                    {
                      "flags": "--time",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--time",
                      "description": "Remove the time value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "identity": {
              "name": "identity",
              "description": "Commands to configure identity of vm in config file.",
              "fullName": "vm config identity",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set identity in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"identity\" : {\r\n             \"principalId\":\"\",\r\n             \"tenantId\":\"\",\r\n             \"type\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config identity set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--principal-id <principalId>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--principal-id",
                      "description": "Set the principal-id value."
                    },
                    {
                      "flags": "--tenant-id <tenantId>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "long": "--tenant-id",
                      "description": "Set the tenant-id value."
                    },
                    {
                      "flags": "--type <type>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Set the type value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove identity in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"identity\" : {\r\n             \"principalId\":\"\",\r\n             \"tenantId\":\"\",\r\n             \"type\":null\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config identity delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--principal-id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--principal-id",
                      "description": "Remove the principal-id value."
                    },
                    {
                      "flags": "--tenant-id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--tenant-id",
                      "description": "Remove the tenant-id value."
                    },
                    {
                      "flags": "--type",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--type",
                      "description": "Remove the type value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "zones": {
              "name": "zones",
              "description": "Commands to configure zones of vm in config file.",
              "fullName": "vm config zones",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set zones in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"zones\" : \"\"\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config zones set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove zones in config string or files, e.g. \r\n         {\r\n           ...\r\n           \"zones\" : \"\"\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm config zones delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "run-command-parameters": {
          "name": "run-command-parameters",
          "description": "Commands to manage configuration of virtual-machines in the parameter file.",
          "fullName": "vm run-command-parameters",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Generate virtualMachinesRunCommand parameter string or files.",
              "fullName": "vm run-command-parameters create",
              "usage": "[options]",
              "filePath": "commands/arm/compute/virtualMachines.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                }
              ]
            },
            {
              "name": "patch",
              "description": "Command to patch virtualMachinesRunCommand parameter JSON file.",
              "fullName": "vm run-command-parameters patch",
              "usage": "[options]",
              "filePath": "commands/arm/compute/virtualMachines.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--parameter-file <parameter-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameter-file",
                  "description": "The parameter file path."
                },
                {
                  "flags": "--operation <operation>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--operation",
                  "description": "The JSON patch operation: add, remove, or replace."
                },
                {
                  "flags": "--path <path>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--path",
                  "description": "The JSON data path, e.g.: \"foo/1\"."
                },
                {
                  "flags": "--value <value>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--value",
                  "description": "The JSON value."
                },
                {
                  "flags": "--parse",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--parse",
                  "description": "Parse the JSON value to object."
                }
              ]
            }
          ],
          "categories": {
            "run-command-input": {
              "name": "run-command-input",
              "description": "Commands to configure run-command-input of vm in run-command-parameters file.",
              "fullName": "vm run-command-parameters run-command-input",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set run-command-input in run-command-parameters string or files, e.g. \r\n{\r\n  \"commandId\":\"\",\r\n  \"script\":[\r\n    \"\"\r\n  ],\r\n  \"parameters\":[\r\n    {\r\n      \"name\":\"\",\r\n      \"value\":\"\"\r\n    }\r\n  ]\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm run-command-parameters run-command-input set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--command-id <commandId>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--command-id",
                      "description": "Set the command-id value."
                    },
                    {
                      "flags": "--script <script>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--script",
                      "description": "Set the script value."
                    },
                    {
                      "flags": "--parameters <parameters>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameters",
                      "description": "Set the parameters value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove run-command-input in run-command-parameters string or files, e.g. \r\n{\r\n  \"commandId\":\"\",\r\n  \"script\":[\r\n    \"\"\r\n  ],\r\n  \"parameters\":[\r\n    {\r\n      \"name\":\"\",\r\n      \"value\":\"\"\r\n    }\r\n  ]\r\n}\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm run-command-parameters run-command-input delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--command-id",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--command-id",
                      "description": "Remove the command-id value."
                    },
                    {
                      "flags": "--script",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--script",
                      "description": "Remove the script value."
                    },
                    {
                      "flags": "--parameters",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameters",
                      "description": "Remove the parameters value."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "script": {
              "name": "script",
              "description": "Commands to configure script of vm in run-command-parameters file.",
              "fullName": "vm run-command-parameters script",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set script in run-command-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"script\" : \"\"\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm run-command-parameters script set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "The input string value for the indexed item."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove script in run-command-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"script\" : \"\"\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm run-command-parameters script delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "parameters": {
              "name": "parameters",
              "description": "Commands to configure parameters of vm in run-command-parameters file.",
              "fullName": "vm run-command-parameters parameters",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set parameters in run-command-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"parameters\" : {\r\n             \"name\":\"\",\r\n             \"value\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm run-command-parameters parameters set",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--parse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse",
                      "description": "Parse the input string, i.e. str, for parameters to a JSON object, e.g. JSON.parse(str)."
                    },
                    {
                      "flags": "--name <name>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Set the name value."
                    },
                    {
                      "flags": "--value <value>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "Set the value value."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Remove parameters in run-command-parameters string or files, e.g. \r\n         {\r\n           ...\r\n           \"parameters\" : {\r\n             \"name\":\"\",\r\n             \"value\":\"\"\r\n           }\r\n           ...\r\n         }\r\n\r\n         There are two sets of commands:\r\n           1) function commands that are used to manage Azure resources in the cloud, and \r\n           2) parameter commands that generate & edit input files for the other set of commands.\r\n         For example, 'vmss show/list/stop' are the function commands that call get, list and stop operations of \r\n         virtual machine scale set, whereas 'vmss config * generate/create/set/delete/add' commands \r\n         are used to configure the input parameter file. The 'vmss config' command takes a parameter \r\n         file as for the VM scale set configuration, and creates it online.",
                  "fullName": "vm run-command-parameters parameters delete",
                  "usage": "[options]",
                  "filePath": "commands/arm/compute/virtualMachines.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--parameter-file <parameter-file>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "long": "--parameter-file",
                      "description": "The parameter file path."
                    },
                    {
                      "flags": "--index <index>",
                      "required": -9,
                      "optional": 0,
                      "bool": true,
                      "long": "--index",
                      "description": "Indexer: index."
                    },
                    {
                      "flags": "--name",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--name",
                      "description": "Remove the name value."
                    },
                    {
                      "flags": "--value",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--value",
                      "description": "Remove the value value."
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "disk": {
          "name": "disk",
          "description": "Commands to manage your Virtual Machine data disks",
          "fullName": "vm disk",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "attach-new",
              "description": "Attach a new data-disk to a VM in a resource group",
              "fullName": "vm disk attach-new",
              "usage": "[options] <resource-group> <vm-name> <size-in-gb> [vhd-name]",
              "filePath": "commands/arm/vm/vm.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-n, --vm-name <vm-name>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--vm-name",
                  "description": "the virtual machine name"
                },
                {
                  "flags": "-z, --size-in-gb <size-in-gb>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-z",
                  "long": "--size-in-gb",
                  "description": "the disk size in GB"
                },
                {
                  "flags": "-d, --vhd-name <vhd-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--vhd-name",
                  "description": "the name for the new VHD"
                },
                {
                  "flags": "-c, --host-caching <name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--host-caching",
                  "description": "the caching behaviour of disk [None, ReadOnly, ReadWrite]"
                },
                {
                  "flags": "-o, --storage-account-name <storageAccountName>",
                  "required": -28,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--storage-account-name",
                  "description": "the storage account name"
                },
                {
                  "flags": "-r, --storage-account-container-name <storageAccountContainerName>",
                  "required": -38,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--storage-account-container-name",
                  "description": "the storage account container name [vhds]"
                },
                {
                  "flags": "-l, --lun <lun>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--lun",
                  "description": "zero based logical unit number of the data disk"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "detach",
              "description": "Detach a data-disk attached to a VM in a resource group",
              "fullName": "vm disk detach",
              "usage": "[options] <resource-group> <vm-name> <lun>",
              "filePath": "commands/arm/vm/vm.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-n, --vm-name <vm-name>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--vm-name",
                  "description": "the virtual machine name"
                },
                {
                  "flags": "-l, --lun <lun>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--lun",
                  "description": "the data disk lun"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "attach",
              "description": "Attach a new data-disk to a VM in a resource group",
              "fullName": "vm disk attach",
              "usage": "[options] <resource-group> <vm-name> [vhd-url]",
              "filePath": "commands/arm/vm/vm.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-n, --vm-name <vm-name>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--vm-name",
                  "description": "the virtual machine name"
                },
                {
                  "flags": "-d, --vhd-url <vhd-url>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--vhd-url",
                  "description": "the URL of existing VHD"
                },
                {
                  "flags": "-c, --host-caching <name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--host-caching",
                  "description": "the caching behaviour of disk [None, ReadOnly, ReadWrite]"
                },
                {
                  "flags": "-l, --lun <lun>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--lun",
                  "description": "zero based logical unit number of the data disk"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "list",
              "description": "Get all data disks of a VM in a resource group",
              "fullName": "vm disk list",
              "usage": "[options] <resource-group> <vm-name>",
              "filePath": "commands/arm/vm/vm.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-n, --vm-name <vm-name>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--vm-name",
                  "description": "the virtual machine name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            }
          ],
          "categories": {}
        },
        "extension": {
          "name": "extension",
          "description": "Commands to manage VM resource extensions",
          "fullName": "vm extension",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "set",
              "description": "Enable/disable resource extensions for a VM in a resource group",
              "fullName": "vm extension set",
              "usage": "[options] <resource-group> <vm-name> <name> <publisher-name> <version>",
              "filePath": "commands/arm/vm/vm.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-m, --vm-name <vm-name>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--vm-name",
                  "description": "the virtual machine name"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the extension name"
                },
                {
                  "flags": "-p, --publisher-name <publisher-name>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--publisher-name",
                  "description": "the publisher name"
                },
                {
                  "flags": "-o, --version <version>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--version",
                  "description": "the extension version"
                },
                {
                  "flags": "-r, --reference-name <reference-name>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--reference-name",
                  "description": "extension's reference name"
                },
                {
                  "flags": "-i, --public-config <public-config>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--public-config",
                  "description": "public configuration text"
                },
                {
                  "flags": "-c, --public-config-path <public-config-path>",
                  "required": -26,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--public-config-path",
                  "description": "public configuration file path"
                },
                {
                  "flags": "-f, --private-config <private-config>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--private-config",
                  "description": "private configuration text"
                },
                {
                  "flags": "-e, --private-config-path <private-config-path>",
                  "required": -27,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--private-config-path",
                  "description": "private configuration file path"
                },
                {
                  "flags": "-u, --uninstall",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--uninstall",
                  "description": "uninstall extension"
                },
                {
                  "flags": "-t, --tags <tags>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "Tags to set to the resource group. Can be mutliple. In the format of 'name=value'. Name is required and value is optional. For example, -t tag1=value1;tag2"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode, do not ask for uninstall confirmation"
                },
                {
                  "flags": "-U, --auto-upgrade-minor-version",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-U",
                  "long": "--auto-upgrade-minor-version",
                  "description": "Pick the highest minor version of the extension"
                },
                {
                  "flags": "--force-update-tag <force-update-tag>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "long": "--force-update-tag",
                  "description": "Sample input: RerunExtension. Specifies that the extension should be run again with the same public or protected settings. The value can be any string different from the current value. If forceUpdateTag is not changed, updates to public or protected settings would still be applied by the handler."
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "set-chef",
              "description": "Enable/disable chef extension for a VM in a resource group",
              "fullName": "vm extension set-chef",
              "usage": "[options] <resource-group> <vm-name> ",
              "filePath": "commands/arm/vm/vm.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-m, --vm-name <vm-name>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--vm-name",
                  "description": "the virtual machine name"
                },
                {
                  "flags": "-o, --version <version>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--version",
                  "description": "the extension version"
                },
                {
                  "flags": "-R, --run-list <run-list>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-R",
                  "long": "--run-list",
                  "description": "Runlist of roles/recipes to apply to VM"
                },
                {
                  "flags": "-O, --validation-pem <validation-pem>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-O",
                  "long": "--validation-pem",
                  "description": "chef validation pem file path. Not required if -C or --client-pem option specified"
                },
                {
                  "flags": "-c, --client-config <client-config>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--client-config",
                  "description": "chef client configuration file(i.e client.rb) path"
                },
                {
                  "flags": "-C, --client-pem <client-pem>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-C",
                  "long": "--client-pem",
                  "description": "chef client pem file path i.e required in validator less bootstrap"
                },
                {
                  "flags": "-j, --bootstrap-options <bootstrap-json-attribute>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-j",
                  "long": "--bootstrap-options",
                  "description": "Bootstrap options in JSON format. Ex: -j '{\"chef_node_name\":\"test_node\"}'"
                },
                {
                  "flags": "--bootstrap-version <number>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--bootstrap-version",
                  "description": "chef-client version to be installed"
                },
                {
                  "flags": "--chef-daemon-interval <chef-daemon-interval>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "long": "--chef-daemon-interval",
                  "description": "It specifies the frequency (in minutes) at which the chef-service runs. Pass 0 if you don't want the chef-service to be installed on the target machine."
                },
                {
                  "flags": "--daemon <daemon>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--daemon",
                  "description": "Configures the chef-client service for unattended execution. The node platform to be Windows. Options: 'none' or 'service' or 'task'. \n 'none' - Currently prevents the chef-client service from being configured as a service. \n 'service' - Configures the chef-client to run automatically in the background as a service. \n 'task' - Configures the chef-client to run automatically in the background as a scheduled task."
                },
                {
                  "flags": "-u, --uninstall",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--uninstall",
                  "description": "uninstall extension"
                },
                {
                  "flags": "-t, --tags <tags>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "Tags to set to the resource group. Can be multiple. In the format of 'name=value'. Name is required and value is optional. For example, -t tag1=value1;tag2"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode, do not ask for uninstall confirmation"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                },
                {
                  "flags": "--secret <secret-key>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--secret",
                  "description": "The secret key to use to encrypt data bag item values."
                },
                {
                  "flags": "--secret-file <secret-file>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--secret-file",
                  "description": "A file containing the secret key to use to encrypt data bag item values."
                },
                {
                  "flags": "--json-attributes <json-attributes>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "long": "--json-attributes",
                  "description": "A JSON string to be added to the first run of chef-client. Ex: --json-attributes '{\"foo\" : \"bar\"}'"
                }
              ]
            },
            {
              "name": "get",
              "description": "Get extensions installed on a virtual machine in a resource group",
              "fullName": "vm extension get",
              "usage": "[options] <resource-group> <vm-name>",
              "filePath": "commands/arm/vm/vm.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-m, --vm-name <vm-name>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--vm-name",
                  "description": "the virtual machine name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "get-chef",
              "description": "Get chef extension installed on a virtual machine in a resource group",
              "fullName": "vm extension get-chef",
              "usage": "[options] <resource-group> <vm-name>",
              "filePath": "commands/arm/vm/vm.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name"
                },
                {
                  "flags": "-m, --vm-name <vm-name>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--vm-name",
                  "description": "the virtual machine name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            }
          ],
          "categories": {}
        },
        "extension-image": {
          "name": "extension-image",
          "description": "Commands to query available VM resource extensions",
          "fullName": "vm extension-image",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list-publishers",
              "description": "Lists virtual machine/extension image publishers",
              "fullName": "vm extension-image list-publishers",
              "usage": "[options] <location>",
              "filePath": "commands/arm/vm/vm.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list-types",
              "description": "Lists virtual machine extension image types by a publisher",
              "fullName": "vm extension-image list-types",
              "usage": "[options] <location> <publisher>",
              "filePath": "commands/arm/vm/vm.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-p, --publisher <publisher>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--publisher",
                  "description": "the publisher name"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list-versions",
              "description": "Lists virtual machine extension image versions by publisher and type input",
              "fullName": "vm extension-image list-versions",
              "usage": "[options] <location> <publisher> <typeName>",
              "filePath": "commands/arm/vm/vm.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-p, --publisher <publisher>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--publisher",
                  "description": "the publisher name"
                },
                {
                  "flags": "-t, --typeName <typeName>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--typeName",
                  "description": "the type name"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list",
              "description": "Lists virtual machine extension images by publisher, and type input",
              "fullName": "vm extension-image list",
              "usage": "[options] <location> <publisher> <typeName>",
              "filePath": "commands/arm/vm/vm.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-p, --publisher <publisher>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--publisher",
                  "description": "the publisher name"
                },
                {
                  "flags": "-t, --typeName <typeName>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--typeName",
                  "description": "the type name"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Lists virtual machine extension image versions by publisher, type and version input",
              "fullName": "vm extension-image show",
              "usage": "[options] <location> <publisher> <typeName> <version>",
              "filePath": "commands/arm/vm/vm.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-p, --publisher <publisher>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--publisher",
                  "description": "the publisher name"
                },
                {
                  "flags": "-t, --typeName <typeName>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--typeName",
                  "description": "the type name"
                },
                {
                  "flags": "-v, --version <version>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--version",
                  "description": "the version"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "docker": {
          "name": "docker",
          "description": "Commands to manage your Docker Virtual Machine",
          "fullName": "vm docker",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a Docker virtual machine in a resource group",
              "fullName": "vm docker create",
              "usage": "[options] <resource-group> <name> <location> <os-type>",
              "filePath": "commands/arm/vm/vm.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the virtual machine name"
                },
                {
                  "flags": "-T, --docker-port <port>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-T",
                  "long": "--docker-port",
                  "description": "Port to use for docker [2376]"
                },
                {
                  "flags": "-O, --docker-cert-dir <dir>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-O",
                  "long": "--docker-cert-dir",
                  "description": "Directory containing docker certs [~/.docker/]"
                },
                {
                  "flags": "-E, --docker-extension-version <version>",
                  "required": -32,
                  "optional": 0,
                  "bool": true,
                  "short": "-E",
                  "long": "--docker-extension-version",
                  "description": "Version of Docker Azure extension [1.0]"
                },
                {
                  "flags": "-c, --docker-cert-cn [CN]",
                  "required": 0,
                  "optional": -22,
                  "bool": true,
                  "short": "-c",
                  "long": "--docker-cert-cn",
                  "description": "Docker server certificate's CN. Can be set if you are using --tlsverify option for Docker connections. Default value is [*]"
                },
                {
                  "flags": "-D, --nic-id <nic-id>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-D",
                  "long": "--nic-id",
                  "description": "the NIC identifier\n     e.g. /subscriptions/<subscriptipn-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/networkInterfaces/<nic-name>"
                },
                {
                  "flags": "-f, --nic-name <nic-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--nic-name",
                  "description": "the NIC name\n     If this is an existing NIC then it must exists under the current resource group identified by resource-group\n     A new NIC will be created if no NIC exists with name nic-name in the current resource group\n     To create new NIC - subnet-id or vnet-name, vnet-address-prefix, subnet-name and vnet-subnet-address-prefix are required\n     Please use nic-id to refer an existing NIC in a different resource group\n     The parameter nic-name will be ignored when nic-id is specified"
                },
                {
                  "flags": "-I, --nic-ids <nic-ids>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-I",
                  "long": "--nic-ids",
                  "description": "the list of NIC identifiers separated by comma. In case of specifying multiple nics first one will be set as primary."
                },
                {
                  "flags": "-N, --nic-names <nic-names>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-N",
                  "long": "--nic-names",
                  "description": "the list of NIC names separated by comma. In case of specifying multiple nics first one will be set as primary.These NICs must exists in the same resource group as the VM. Please use nic-ids if that not the case. This parameter will be ignored if --nic-ids is specified"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-y, --os-type <os-type>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-y",
                  "long": "--os-type",
                  "description": "the operating system Type, valid values are Windows, Linux"
                },
                {
                  "flags": "-Q, --image-urn <image-urn>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-Q",
                  "long": "--image-urn",
                  "description": "the image URN in the form publisherName:offer:skus:version"
                },
                {
                  "flags": "-u, --admin-username <admin-username>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--admin-username",
                  "description": "the user name\n      This parameter is valid for a VM created from an image (image-urn) and ignored when VM is based on disk (os-disk-*)"
                },
                {
                  "flags": "-p, --admin-password <admin-password>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--admin-password",
                  "description": "the password\n      This parameter is valid for a VM created from an image (image-urn) and ignored when VM is based on disk (os-disk-*)"
                },
                {
                  "flags": "-M, --ssh-publickey-file <openssh-rsa-file|pem-file>",
                  "required": -26,
                  "optional": 0,
                  "bool": true,
                  "short": "-M",
                  "long": "--ssh-publickey-file",
                  "description": "path to public key PEM file or SSH Public key file for SSH authentication\n     This parameter is valid only when os-type is \"Linux\""
                },
                {
                  "flags": "-G, --generate-ssh-keys",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-G",
                  "long": "--generate-ssh-keys",
                  "description": "Auto generate SSH keys, --ssh-publickey-file will be ignored. This parameter is valid only when os-type is \"Linux\""
                },
                {
                  "flags": "-z, --vm-size <vm-size>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-z",
                  "long": "--vm-size",
                  "description": "the virtual machine size [Standard_A1]"
                },
                {
                  "flags": "-U, --public-ip-id <public-ip-id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-U",
                  "long": "--public-ip-id",
                  "description": "the public ip identifier\n     e.g. /subscriptions/<subscriptipn-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/publicIPAddresses/<public-ip-name>"
                },
                {
                  "flags": "-i, --public-ip-name <public-ip-name>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--public-ip-name",
                  "description": "the public ip name\n     If this is an existing public IP then it must exists under the current resource group identified by resource-group\n     A new public IP will be created if no public IP exists with name public-ip-name in the current resource group\n     Please use public-ip-id to refer an existing public IP in a different resource group\n     The parameter public-ip-name will be ignored when public-ip-id is specified"
                },
                {
                  "flags": "-w, --public-ip-domain-name <public-ip-domain-name>",
                  "required": -29,
                  "optional": 0,
                  "bool": true,
                  "short": "-w",
                  "long": "--public-ip-domain-name",
                  "description": "the public ip domain name\n     This sets the DNS to <publicip-domain-name>.<location>.cloudapp.azure.com\n     This parameter will be used only when creating new public IP"
                },
                {
                  "flags": "-m, --public-ip-allocationmethod <public-ip-allocationmethod>",
                  "required": -34,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--public-ip-allocationmethod",
                  "description": "the public ip allocation method, valid values are \"Dynamic\"\n     This parameter will be used only when creating new public IP"
                },
                {
                  "flags": "-t, --public-ip-idletimeout <public-ip-idletimeout>",
                  "required": -29,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--public-ip-idletimeout",
                  "description": "the public ip idle timeout specified in minutes\n     This parameter will be used only when creating new public IP"
                },
                {
                  "flags": "-S, --subnet-id <subnet-id>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-S",
                  "long": "--subnet-id",
                  "description": "the subnet identifier\n     e.g. /subscriptions/<subscriptipn-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/virtualNetworks/<vnet-name>/subnets/<subnet-name>"
                },
                {
                  "flags": "-F, --vnet-name <vnet-name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-F",
                  "long": "--vnet-name",
                  "description": "the virtual network name\n     If this is an existing vnet then it must exists under the current resource group identified by resource-group\n     If this is an existing vnet then vnet-subnet-name is required\n          If no subnet exists with name vnet-subnet-name then a new subnet will be created\n          To create new subnet vnet-subnet-address-prefix is required\n     A new vnet will be created if no vnet exists with name vnet-name in the current resource group\n     To create new vnet, vnet-address-prefix, vnet-subnet-name and vnet-subnet-address-prefix are required\n     Please use subnet-id to refer an existing subnet under a vnet in a different resource group\n     vnet-name, vnet-address-prefix, vnet-subnet-name and vnet-subnet-address-prefix will be ignored when subnet-id is specified"
                },
                {
                  "flags": "-P, --vnet-address-prefix <vnet-address-prefix>",
                  "required": -27,
                  "optional": 0,
                  "bool": true,
                  "short": "-P",
                  "long": "--vnet-address-prefix",
                  "description": "the virtual network address prefix in IPv4/CIDR format"
                },
                {
                  "flags": "-j, --vnet-subnet-name <vnet-subnet-name>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-j",
                  "long": "--vnet-subnet-name",
                  "description": "the virtual network subnet name"
                },
                {
                  "flags": "-k, --vnet-subnet-address-prefix <vnet-subnet-address-prefix>",
                  "required": -34,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--vnet-subnet-address-prefix",
                  "description": "the virtual network subnet address prefix in IPv4/CIDR format"
                },
                {
                  "flags": "-r, --availset-name <availset-name>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--availset-name",
                  "description": "the availability set name"
                },
                {
                  "flags": "-o, --storage-account-name <storage-account-name>",
                  "required": -28,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--storage-account-name",
                  "description": "the storage account name"
                },
                {
                  "flags": "-R, --storage-account-container-name <storage-account-container-name>",
                  "required": -38,
                  "optional": 0,
                  "bool": true,
                  "short": "-R",
                  "long": "--storage-account-container-name",
                  "description": "the storage account container name [vhds]"
                },
                {
                  "flags": "-d, --os-disk-vhd <os-disk-vhd>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--os-disk-vhd",
                  "description": "name or url of the OS disk Vhd\n     If this parameter is specified along with --image-urn parameter then OS disk created from the image will be stored in this vhd\n     If this parameter is specified without --image-urn parameter then this vhd must exists and will be used as OS Disk"
                },
                {
                  "flags": "-a, --data-disk-caching <data-disk-caching>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--data-disk-caching",
                  "description": "data disk caching, valid values are None, ReadOnly, ReadWrite"
                },
                {
                  "flags": "-x, --data-disk-vhd <data-disk-vhd>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-x",
                  "long": "--data-disk-vhd",
                  "description": "name or url of the data disk Vhd"
                },
                {
                  "flags": "-e, --data-disk-size <data-disk-size>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--data-disk-size",
                  "description": "data disk size in GB"
                },
                {
                  "flags": "-Y, --data-disk-existing",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-Y",
                  "long": "--data-disk-existing",
                  "description": "Will use existing VHD if specified. Don't specify this param if you are creating data disk from a new VHD."
                },
                {
                  "flags": "-C, --custom-data <custom-data-file>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-C",
                  "long": "--custom-data",
                  "description": "CustomData file"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "image": {
          "name": "image",
          "description": "Commands to manage VM images",
          "fullName": "vm image",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list-publishers",
              "description": "Lists virtual machines image publishers",
              "fullName": "vm image list-publishers",
              "usage": "[options] <location>",
              "filePath": "commands/arm/vm/vm.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list-offers",
              "description": "Lists virtual machines image offers by a publisher",
              "fullName": "vm image list-offers",
              "usage": "[options] <location> <publisher>",
              "filePath": "commands/arm/vm/vm.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-p, --publisher <publisher>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--publisher",
                  "description": "the publisher name"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list-skus",
              "description": "Lists virtual machines image skus for a specific offer from a publisher",
              "fullName": "vm image list-skus",
              "usage": "[options] <location> <publisher> <offer>",
              "filePath": "commands/arm/vm/vm.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-p, --publisher <publisher>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--publisher",
                  "description": "the publisher name"
                },
                {
                  "flags": "-o, --offer <offer>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--offer",
                  "description": "the offer"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list",
              "description": "Lists the virtual machines images",
              "fullName": "vm image list",
              "usage": "[options] <location> <publisher> [offer] [sku]",
              "filePath": "commands/arm/vm/vm.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-p, --publisher <publisher>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--publisher",
                  "description": "the publisher name"
                },
                {
                  "flags": "-o, --offer <offer>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--offer",
                  "description": "the offer"
                },
                {
                  "flags": "-k, --sku <sku>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--sku",
                  "description": "the sku"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Lists the virtual machines images",
              "fullName": "vm image show",
              "usage": "[options] <location> <publisher> <offer> <sku> <version>",
              "filePath": "commands/arm/vm/vm.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-p, --publisher <publisher>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--publisher",
                  "description": "the publisher name"
                },
                {
                  "flags": "-o, --offer <offer>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--offer",
                  "description": "the offer"
                },
                {
                  "flags": "-k, --sku <sku>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--sku",
                  "description": "the sku"
                },
                {
                  "flags": "-e, --version <version>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--version",
                  "description": "the version"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "secret": {
          "name": "secret",
          "description": "Commands to manage VM secrets",
          "fullName": "vm secret",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "add",
              "description": "Adds a secret to the VM",
              "fullName": "vm secret add",
              "usage": "[options] <resource-group> <name> <source-vault-id>",
              "filePath": "commands/arm/vm/vm.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the VM name"
                },
                {
                  "flags": "-r, --source-vault-id <source-vault-id>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--source-vault-id",
                  "description": "the source-vault-id"
                },
                {
                  "flags": "-c, --certificate-url <certificate-url>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--certificate-url",
                  "description": "certificate-url"
                },
                {
                  "flags": "-t, --certificate-store <certificate-store>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--certificate-store",
                  "description": "certificate-store"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Deletes a secret to the VM",
              "fullName": "vm secret delete",
              "usage": "[options] <resource-group> <name> <source-vault-id>",
              "filePath": "commands/arm/vm/vm.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the VM name"
                },
                {
                  "flags": "-r, --source-vault-id <source-vault-id>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--source-vault-id",
                  "description": "the source-vault-id"
                },
                {
                  "flags": "-c, --certificate-url <certificate-url>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--certificate-url",
                  "description": "certificate-url"
                },
                {
                  "flags": "-t, --certificate-store <certificate-store>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--certificate-store",
                  "description": "certificate-store"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        }
      }
    },
    "datalake": {
      "name": "datalake",
      "description": "Commands to manage your Data Lake objects",
      "fullName": "datalake",
      "usage": "[options]",
      "options": [],
      "commands": [],
      "categories": {
        "analytics": {
          "name": "analytics",
          "description": "Commands to manage your Data Lake Analytics objects",
          "fullName": "datalake analytics",
          "usage": "[options]",
          "options": [],
          "commands": [],
          "categories": {
            "job": {
              "name": "job",
              "description": "Commands to manage your Data Lake Analytics Jobs",
              "fullName": "datalake analytics job",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Submits a job to the specified Data Lake Analytics account.",
                  "fullName": "datalake analytics job create",
                  "usage": "[options] <accountName> <jobName> <script>",
                  "filePath": "commands/arm/datalakeanalytics/datalakeanalytics.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Analytics account name to execute the action on"
                    },
                    {
                      "flags": "-j --jobName <jobName>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "short": "-j",
                      "long": "--jobName",
                      "description": "the name for this job submission"
                    },
                    {
                      "flags": "-t --script <script>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--script",
                      "description": "the script to run. This can be either the script contents, a relative path or the full path to a UTF-8 encoded script file"
                    },
                    {
                      "flags": "-r --runtime <runtime>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--runtime",
                      "description": "optionally indicates the runtime to use. The default runtime is the currently deployed production runtime.Use this if you have uploaded a custom runtime to your account and want job execution to go through that one instead of the one deployed by Microsoft."
                    },
                    {
                      "flags": "-m --compileMode <compileMode>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-m",
                      "long": "--compileMode",
                      "description": "optionally specify the type of compilation to do. Valid values are 'Semantic', 'Full', and 'SingleBox' Default is Full."
                    },
                    {
                      "flags": "-c --compileOnly",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--compileOnly",
                      "description": "optionally indicates that this job should only be compiled and not run."
                    },
                    {
                      "flags": "-d --degreeOfParallelism <degreeOfParallelism>",
                      "required": -26,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--degreeOfParallelism",
                      "description": "optionally specify the degree of parallelism for the job in a range from 1 to 50. Default value is 1."
                    },
                    {
                      "flags": "-p --priority <priority>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--priority",
                      "description": "optionally specify the priority for the job. Default value is 1000, with lower, positive, non-zero values having higher priority. 1 is the highest priority and int.maxValue is the lowest."
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "shows the specified job and additional data if desired.",
                  "fullName": "datalake analytics job show",
                  "usage": "[options] <accountName> <jobId>",
                  "filePath": "commands/arm/datalakeanalytics/datalakeanalytics.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Analytics account name to execute the action on"
                    },
                    {
                      "flags": "-j --jobId <jobId>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-j",
                      "long": "--jobId",
                      "description": "the job ID of the job to retrieve."
                    },
                    {
                      "flags": "-d --includeDebugInfo",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--includeDebugInfo",
                      "description": "optionally indicates that debug info should be output for the job as well."
                    },
                    {
                      "flags": "-t --includeStatistics",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--includeStatistics",
                      "description": "optionally indicates that statistics for the job should be output as well."
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "cancel",
                  "description": "cancels the specified job.",
                  "fullName": "datalake analytics job cancel",
                  "usage": "[options] <accountName> <jobId>",
                  "filePath": "commands/arm/datalakeanalytics/datalakeanalytics.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Analytics account name to execute the action on"
                    },
                    {
                      "flags": "-j --jobId <jobId>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-j",
                      "long": "--jobId",
                      "description": "the job ID of the job to cancel."
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode (do not ask for cancel confirmation)"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "wait",
                  "description": "waits for the specified job to complete and outputs the finished job result.",
                  "fullName": "datalake analytics job wait",
                  "usage": "[options] <accountName> <jobId>",
                  "filePath": "commands/arm/datalakeanalytics/datalakeanalytics.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Analytics account name to execute the action on"
                    },
                    {
                      "flags": "-j --jobId <jobId>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-j",
                      "long": "--jobId",
                      "description": "the job identifier of the job to wait for completion."
                    },
                    {
                      "flags": "-w --waitInterval <wait in seconds>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--waitInterval",
                      "description": "the optional amount of time to wait between each poll of the job, in seconds. Default is five seconds."
                    },
                    {
                      "flags": "-t --timeout <max time to wait in seconds>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--timeout",
                      "description": "the optional maximum amount of time to wait for the job to complete, in seconds. Default is to never timeout."
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "lists the jobs in the specified account given the specified filters and criteria.",
                  "fullName": "datalake analytics job list",
                  "usage": "[options] <accountName>",
                  "filePath": "commands/arm/datalakeanalytics/datalakeanalytics.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Analytics account name to execute the action on"
                    },
                    {
                      "flags": "-j --jobName <jobName>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "short": "-j",
                      "long": "--jobName",
                      "description": "An optional filter which returns jobs with only the specified friendly name."
                    },
                    {
                      "flags": "-u, --submitter <submitter>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--submitter",
                      "description": "An optional filter which returns jobs only by the specified submitter in the format user@domain"
                    },
                    {
                      "flags": "-a, --submittedAfter <submittedAfter>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--submittedAfter",
                      "description": "An optional filter which returns jobs only submitted after the specified time (as a date time offset)."
                    },
                    {
                      "flags": "-b, --submittedBefore <submittedAfter>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "short": "-b",
                      "long": "--submittedBefore",
                      "description": "An optional filter which returns jobs only submitted before the specified time (as a date time offset)."
                    },
                    {
                      "flags": "-t, --state <comma delmited string of states>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--state",
                      "description": "An optional filter which returns jobs with only the specified states (as comma delmited string). Valid states are: accepted, compiling, ended, new, queued, running, scheduling, starting and paused"
                    },
                    {
                      "flags": "-r, --result <comma delmited string of results>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--result",
                      "description": "An optional filter which returns jobs with only the specified results (as comma delmited string). Valid results are: none, succeeded, cancelled and failed"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "catalog": {
              "name": "catalog",
              "description": "Commands to manage your Data Lake Analytics Catalog",
              "fullName": "datalake analytics catalog",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "Lists all of the specified catalog item types under the path or, if the full path is given, just the single catalog item at that path.",
                  "fullName": "datalake analytics catalog list",
                  "usage": "[options] <accountName> <itemType> <itemPath>",
                  "filePath": "commands/arm/datalakeanalytics/datalakeanalytics.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "The Data Lake Analytics account name to perform the action on."
                    },
                    {
                      "flags": "-t --itemType <itemType>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--itemType",
                      "description": "The catalog item type to return. Valid values are (case insensitive): database, schema, secret, credential, assembly, externaldatasource, table, tablevaluedfunction, view, procedure, types, tablepartition or tablestatistics"
                    },
                    {
                      "flags": "-p --itemPath <itemPath>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--itemPath",
                      "description": "The path to the catalog item(s) to get or list in the format: <FirstPart>.<OptionalSecondPart>.<OptionalThirdPart>.<OptionalFourthPart>. This MUST be null when listing all databases."
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {
                "credential": {
                  "name": "credential",
                  "description": "Commands to manage your Data Lake Analytics Catalog credentials.",
                  "fullName": "datalake analytics catalog credential",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "create",
                      "description": "Creates the specified credential for the specified database.",
                      "fullName": "datalake analytics catalog credential create",
                      "usage": "[options] <accountName> <databaseName> <hostUri> <credentialName> <credentialUserName>",
                      "filePath": "commands/arm/datalakeanalytics/datalakeanalytics.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-n --accountName <accountName>",
                          "required": -18,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--accountName",
                          "description": "The Data Lake Analytics account name to perform the action on."
                        },
                        {
                          "flags": "-d --databaseName <databaseName>",
                          "required": -19,
                          "optional": 0,
                          "bool": true,
                          "short": "-d",
                          "long": "--databaseName",
                          "description": "The name of the database in which the credential will be created."
                        },
                        {
                          "flags": "-u --hostUri <hostUri>",
                          "required": -14,
                          "optional": 0,
                          "bool": true,
                          "short": "-u",
                          "long": "--hostUri",
                          "description": "The full host URI associated with the external data source. The credential will authenticate against this host URI."
                        },
                        {
                          "flags": "-e --credentialName <credentialName>",
                          "required": -21,
                          "optional": 0,
                          "bool": true,
                          "short": "-e",
                          "long": "--credentialName",
                          "description": "name of the credential to be created in the specified database"
                        },
                        {
                          "flags": "-a --credentialUserName <credentialUserName>",
                          "required": -25,
                          "optional": 0,
                          "bool": true,
                          "short": "-a",
                          "long": "--credentialUserName",
                          "description": "the user name of the credential to authenticate with. Will prompt if not given"
                        },
                        {
                          "flags": "-p --password <password>",
                          "required": -15,
                          "optional": 0,
                          "bool": true,
                          "short": "-p",
                          "long": "--password",
                          "description": "the password that matches with the credentialUserName, will prompt if not given"
                        },
                        {
                          "flags": "-s, --subscription <id>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    },
                    {
                      "name": "set",
                      "description": "Updates the password of the specified credential in the specified database.",
                      "fullName": "datalake analytics catalog credential set",
                      "usage": "[options] <accountName> <databaseName> <hostUri> <credentialName> <credentialUserName>",
                      "filePath": "commands/arm/datalakeanalytics/datalakeanalytics.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-n --accountName <accountName>",
                          "required": -18,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--accountName",
                          "description": "The Data Lake Analytics account name to perform the action on."
                        },
                        {
                          "flags": "-d --databaseName <databaseName>",
                          "required": -19,
                          "optional": 0,
                          "bool": true,
                          "short": "-d",
                          "long": "--databaseName",
                          "description": "The name of the database in which the credential will be updated."
                        },
                        {
                          "flags": "-u --hostUri <hostUri>",
                          "required": -14,
                          "optional": 0,
                          "bool": true,
                          "short": "-u",
                          "long": "--hostUri",
                          "description": "The full host URI associated with the external data source. This must be the same as the hostUri used to create the credential."
                        },
                        {
                          "flags": "-e --credentialName <credentialName>",
                          "required": -21,
                          "optional": 0,
                          "bool": true,
                          "short": "-e",
                          "long": "--credentialName",
                          "description": "credential name to update."
                        },
                        {
                          "flags": "-a --credentialUserName <credentialUserName>",
                          "required": -25,
                          "optional": 0,
                          "bool": true,
                          "short": "-a",
                          "long": "--credentialUserName",
                          "description": "the user name of the credential to authenticate with. Will prompt if not given"
                        },
                        {
                          "flags": "-p --password <password>",
                          "required": -15,
                          "optional": 0,
                          "bool": true,
                          "short": "-p",
                          "long": "--password",
                          "description": "the original password that matches with the credentialUserName, will prompt if not given"
                        },
                        {
                          "flags": "-w --newPassword <password>",
                          "required": -18,
                          "optional": 0,
                          "bool": true,
                          "short": "-w",
                          "long": "--newPassword",
                          "description": "the new password to update the credential with, will prompt if not given"
                        },
                        {
                          "flags": "-s, --subscription <id>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    },
                    {
                      "name": "delete",
                      "description": "Deletes the specified credential in the specified database.",
                      "fullName": "datalake analytics catalog credential delete",
                      "usage": "[options] <accountName> <databaseName> <credentialName>",
                      "filePath": "commands/arm/datalakeanalytics/datalakeanalytics.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-n --accountName <accountName>",
                          "required": -18,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--accountName",
                          "description": "The Data Lake Analytics account name to perform the action on."
                        },
                        {
                          "flags": "-d --databaseName <databaseName>",
                          "required": -19,
                          "optional": 0,
                          "bool": true,
                          "short": "-d",
                          "long": "--databaseName",
                          "description": "The name of the database in which the credential(s) will be deleted."
                        },
                        {
                          "flags": "-e --credentialName <credentialName>",
                          "required": -21,
                          "optional": 0,
                          "bool": true,
                          "short": "-e",
                          "long": "--credentialName",
                          "description": "Credential name to delete."
                        },
                        {
                          "flags": "-p --password <password>",
                          "required": -15,
                          "optional": 0,
                          "bool": true,
                          "short": "-p",
                          "long": "--password",
                          "description": "the password that matches with the username inside the specified credential. Required if the caller is not the owner of the Data Lake Analytics account."
                        },
                        {
                          "flags": "-q, --quiet",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-q",
                          "long": "--quiet",
                          "description": "quiet mode (do not ask for delete confirmation)"
                        },
                        {
                          "flags": "-s, --subscription <id>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    }
                  ],
                  "categories": {}
                },
                "secret": {
                  "name": "secret",
                  "description": "DEPRECATED: Commands to manage your Data Lake Analytics Catalog secrets. This category will be removed in a future release. Please use the credential commands instead",
                  "fullName": "datalake analytics catalog secret",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "create",
                      "description": "DEPRECATED: Creates the specified secret for the specified database. This command will be removed in a future release. Please use 'credential create' instead.",
                      "fullName": "datalake analytics catalog secret create",
                      "usage": "[options] <accountName> <databaseName> <hostUri> <secretName>",
                      "filePath": "commands/arm/datalakeanalytics/datalakeanalytics.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-n --accountName <accountName>",
                          "required": -18,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--accountName",
                          "description": "The Data Lake Analytics account name to perform the action on."
                        },
                        {
                          "flags": "-d --databaseName <databaseName>",
                          "required": -19,
                          "optional": 0,
                          "bool": true,
                          "short": "-d",
                          "long": "--databaseName",
                          "description": "The name of the database in which the secret will be created."
                        },
                        {
                          "flags": "-u --hostUri <hostUri>",
                          "required": -14,
                          "optional": 0,
                          "bool": true,
                          "short": "-u",
                          "long": "--hostUri",
                          "description": "The full host URI associated with the external data source. The secret will be used with this host URI."
                        },
                        {
                          "flags": "-e --secretName <secretName>",
                          "required": -17,
                          "optional": 0,
                          "bool": true,
                          "short": "-e",
                          "long": "--secretName",
                          "description": "secret name, will prompt if not given"
                        },
                        {
                          "flags": "-p --password <password>",
                          "required": -15,
                          "optional": 0,
                          "bool": true,
                          "short": "-p",
                          "long": "--password",
                          "description": "secret password, will prompt if not given"
                        },
                        {
                          "flags": "-s, --subscription <id>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    },
                    {
                      "name": "set",
                      "description": "DEPRECATED: Updates the password and/or hostUri of the specified secret in the specified database. This command will be removed in a future release. Please use 'credential set' instead.",
                      "fullName": "datalake analytics catalog secret set",
                      "usage": "[options] <accountName> <databaseName> <hostUri> <secretName>",
                      "filePath": "commands/arm/datalakeanalytics/datalakeanalytics.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-n --accountName <accountName>",
                          "required": -18,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--accountName",
                          "description": "The Data Lake Analytics account name to perform the action on."
                        },
                        {
                          "flags": "-d --databaseName <databaseName>",
                          "required": -19,
                          "optional": 0,
                          "bool": true,
                          "short": "-d",
                          "long": "--databaseName",
                          "description": "The name of the database in which the secret will be updated."
                        },
                        {
                          "flags": "-u --hostUri <hostUri>",
                          "required": -14,
                          "optional": 0,
                          "bool": true,
                          "short": "-u",
                          "long": "--hostUri",
                          "description": "The full host URI associated with the external data source. The secret will be used with this host URI."
                        },
                        {
                          "flags": "-e --secretName <secretName>",
                          "required": -17,
                          "optional": 0,
                          "bool": true,
                          "short": "-e",
                          "long": "--secretName",
                          "description": "secret name, will prompt if not given"
                        },
                        {
                          "flags": "-p --password <password>",
                          "required": -15,
                          "optional": 0,
                          "bool": true,
                          "short": "-p",
                          "long": "--password",
                          "description": "secret password, will prompt if not given"
                        },
                        {
                          "flags": "-s, --subscription <id>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    },
                    {
                      "name": "delete",
                      "description": "DEPRECATED: Deletes the specified secret in the specified database. This command will be removed in a future release. Please use 'credential delete' instead.",
                      "fullName": "datalake analytics catalog secret delete",
                      "usage": "[options] <accountName> <databaseName> <hostUri> <secretName>",
                      "filePath": "commands/arm/datalakeanalytics/datalakeanalytics.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-n --accountName <accountName>",
                          "required": -18,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--accountName",
                          "description": "The Data Lake Analytics account name to perform the action on."
                        },
                        {
                          "flags": "-d --databaseName <databaseName>",
                          "required": -19,
                          "optional": 0,
                          "bool": true,
                          "short": "-d",
                          "long": "--databaseName",
                          "description": "The name of the database in which the secret(s) will be deleted."
                        },
                        {
                          "flags": "-e --secretName <secretName>",
                          "required": -17,
                          "optional": 0,
                          "bool": true,
                          "short": "-e",
                          "long": "--secretName",
                          "description": "Optional secret name to delete, if not specified will delete all secrets in the specified database"
                        },
                        {
                          "flags": "-q, --quiet",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-q",
                          "long": "--quiet",
                          "description": "quiet mode (do not ask for delete confirmation)"
                        },
                        {
                          "flags": "-s, --subscription <id>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    }
                  ],
                  "categories": {}
                }
              }
            },
            "account": {
              "name": "account",
              "description": "Commands to manage your Data Lake Analytics accounts",
              "fullName": "datalake analytics account",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "List all Data Lake Analytics accounts available for your subscription or subscription and resource group",
                  "fullName": "datalake analytics account list",
                  "usage": "[options]",
                  "filePath": "commands/arm/datalakeanalytics/datalakeanalytics.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the optional resource group to list the accounts in"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Shows a Data Lake Analytics account based on account name",
                  "fullName": "datalake analytics account show",
                  "usage": "[options] <accountName>",
                  "filePath": "commands/arm/datalakeanalytics/datalakeanalytics.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Analytics account name to retrieve"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the optional resource group to list the accounts in"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Deletes a Data Lake Analytics Account based on account name",
                  "fullName": "datalake analytics account delete",
                  "usage": "[options] <accountName>",
                  "filePath": "commands/arm/datalakeanalytics/datalakeanalytics.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Analytics account name to delete"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the optional resource group to force the command to find the Data Lake Analytics account to delete in."
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode (do not ask for delete confirmation)"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "create",
                  "description": "Creates a Data Lake Analytics Account",
                  "fullName": "datalake analytics account create",
                  "usage": "[options] <accountName> <location> <resource-group> <defaultDataLakeStore>",
                  "filePath": "commands/arm/datalakeanalytics/datalakeanalytics.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "The Data Lake Analytics account name to create"
                    },
                    {
                      "flags": "-l --location <location>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--location",
                      "description": "the location the Data Lake Analytics account will be created in. Valid values are: North Central US, South Central US, Central US, West Europe, North Europe, West US, East US, East US 2, Japan East, Japan West, Brazil South, Southeast Asia, East Asia, Australia East, Australia Southeast"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the resource group to create the account in"
                    },
                    {
                      "flags": "-d --defaultDataLakeStore <defaultDataLakeStore>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--defaultDataLakeStore",
                      "description": "the default Data Lake Store to associate with this account."
                    },
                    {
                      "flags": "-p --maxDegreeOfParallelism <1 to the account limit>",
                      "required": -29,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--maxDegreeOfParallelism",
                      "description": "Optional, the maximum supported degree of parallelism for this account, from 1 to the account defined limit. Default is 30"
                    },
                    {
                      "flags": "-r --queryStoreRetentionTime <1 to 180>",
                      "required": -30,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--queryStoreRetentionTime",
                      "description": "Optional, the number of days that job metadata is retained, from 1 to 180. Default is 30"
                    },
                    {
                      "flags": "-j --maxJobCount <1 to account limit>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-j",
                      "long": "--maxJobCount",
                      "description": "Optional, the maximum supported jobs running under the account at the same time., from 1 to the account defined limit. Default is 3"
                    },
                    {
                      "flags": "-t --tags <tags>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--tags",
                      "description": "Tags to set to the the Data Lake Analytics account. Can be mutliple. In the format of 'name=value'. Name is required and value is optional. For example, -t tag1=value1;tag2"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Updates the properties of an existing Data Lake Analytics Account",
                  "fullName": "datalake analytics account set",
                  "usage": "[options] <accountName>",
                  "filePath": "commands/arm/datalakeanalytics/datalakeanalytics.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "The Data Lake Analytics Account name to perform the action on."
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the optional resource group to forcibly look for the account to update in"
                    },
                    {
                      "flags": "-p --maxDegreeOfParallelism <1 to the account limit>",
                      "required": -29,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--maxDegreeOfParallelism",
                      "description": "Optionally update the maximum supported degree of parallelism for this account, from 1 to the account defined limit."
                    },
                    {
                      "flags": "-r --queryStoreRetentionTime <1 to 180>",
                      "required": -30,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--queryStoreRetentionTime",
                      "description": "Optionally update the number of days that job metadata is retained, from 1 to 180."
                    },
                    {
                      "flags": "-j --maxJobCount <1 to account limit>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-j",
                      "long": "--maxJobCount",
                      "description": "Optionally update the maximum supported jobs running under the account at the same time., from 1 to the account defined limit."
                    },
                    {
                      "flags": "-t --tags <tags>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--tags",
                      "description": "Tags to set to the Data Lake Analytics account group. Can be mutliple. In the format of 'name=value'. Name is required and value is optional. For example, -t tag1=value1;tag2"
                    },
                    {
                      "flags": "--no-tags",
                      "required": 0,
                      "optional": 0,
                      "bool": false,
                      "long": "--no-tags",
                      "description": "remove all existing tags"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {
                "datasource": {
                  "name": "datasource",
                  "description": "Commands to manage your Data Lake Analytics account data sources",
                  "fullName": "datalake analytics account datasource",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "add",
                      "description": "Adds an existing data source (Data Lake Store or Azure Blob) to the Data Lake Analytics Account",
                      "fullName": "datalake analytics account datasource add",
                      "usage": "[options] <accountName>",
                      "filePath": "commands/arm/datalakeanalytics/datalakeanalytics.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-n --accountName <accountName>",
                          "required": -18,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--accountName",
                          "description": "The Data Lake Analytics Account name to perform the action on."
                        },
                        {
                          "flags": "-l --dataLakeStore <dataLakeStore>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-l",
                          "long": "--dataLakeStore",
                          "description": "the Data Lake Store account to add. NOTE: this argument cannot be specified with --azureBlob and --accessKey."
                        },
                        {
                          "flags": "-b --azureBlob <azureBlob>",
                          "required": -16,
                          "optional": 0,
                          "bool": true,
                          "short": "-b",
                          "long": "--azureBlob",
                          "description": "the azure blob to add to the account. NOTE: this argument and --accessKey are part of a parameter set, and cannot be specified with --dataLakeStore."
                        },
                        {
                          "flags": "-k --accessKey <accessKey>",
                          "required": -16,
                          "optional": 0,
                          "bool": true,
                          "short": "-k",
                          "long": "--accessKey",
                          "description": "the access key associated with the azureBlob. NOTE: this argument and --azureBlob are part of a parameter set, and cannot be specified with --dataLakeStore."
                        },
                        {
                          "flags": "-g --resource-group <resource-group>",
                          "required": -21,
                          "optional": 0,
                          "bool": true,
                          "short": "-g",
                          "long": "--resource-group",
                          "description": "the optional resource group to forcibly look for the account to update in"
                        },
                        {
                          "flags": "-s, --subscription <id>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    },
                    {
                      "name": "delete",
                      "description": "removes a data source (Data Lake Store or Azure Blob) from the Data Lake Analytics Account",
                      "fullName": "datalake analytics account datasource delete",
                      "usage": "[options] <accountName>",
                      "filePath": "commands/arm/datalakeanalytics/datalakeanalytics.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-n --accountName <accountName>",
                          "required": -18,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--accountName",
                          "description": "The Data Lake Analytics Account name to perform the action on."
                        },
                        {
                          "flags": "-l --dataLakeStore <dataLakeStore>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-l",
                          "long": "--dataLakeStore",
                          "description": "the Data Lake to remove from the account. NOTE: this argument is part of a parameter set, and cannot be specified with --azureBlob."
                        },
                        {
                          "flags": "-b --azureBlob <azureBlob>",
                          "required": -16,
                          "optional": 0,
                          "bool": true,
                          "short": "-b",
                          "long": "--azureBlob",
                          "description": "the azure blob to remove from the account. NOTE: this argument is part of a parameter set, and cannot be specified with --dataLakeStore."
                        },
                        {
                          "flags": "-g --resource-group <resource-group>",
                          "required": -21,
                          "optional": 0,
                          "bool": true,
                          "short": "-g",
                          "long": "--resource-group",
                          "description": "the optional resource group to forcibly look for the account to update in"
                        },
                        {
                          "flags": "-s, --subscription <id>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    },
                    {
                      "name": "set",
                      "description": "Sets an existing data source (Azure Blob) in the Data Lake Analytics Account. Typically used to update the access key (for Azure Blob)",
                      "fullName": "datalake analytics account datasource set",
                      "usage": "[options] <accountName> <azureBlob> <accessKey>",
                      "filePath": "commands/arm/datalakeanalytics/datalakeanalytics.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-n --accountName <accountName>",
                          "required": -18,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--accountName",
                          "description": "The Data Lake Analytics Account name to perform the action on."
                        },
                        {
                          "flags": "-b --azureBlob <azureBlob>",
                          "required": -16,
                          "optional": 0,
                          "bool": true,
                          "short": "-b",
                          "long": "--azureBlob",
                          "description": "the azure blob to set in the account."
                        },
                        {
                          "flags": "-k --accessKey <accessKey>",
                          "required": -16,
                          "optional": 0,
                          "bool": true,
                          "short": "-k",
                          "long": "--accessKey",
                          "description": "the updated access key associated with the azureBlob to update."
                        },
                        {
                          "flags": "-g --resource-group <resource-group>",
                          "required": -21,
                          "optional": 0,
                          "bool": true,
                          "short": "-g",
                          "long": "--resource-group",
                          "description": "the optional resource group to forcibly look for the account to update in"
                        },
                        {
                          "flags": "-s, --subscription <id>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    }
                  ],
                  "categories": {}
                }
              }
            }
          }
        },
        "store": {
          "name": "store",
          "description": "Commands to manage your Data Lake Storage objects",
          "fullName": "datalake store",
          "usage": "[options]",
          "options": [],
          "commands": [],
          "categories": {
            "filesystem": {
              "name": "filesystem",
              "description": "Commands to manage your Data Lake Storage FileSystem",
              "fullName": "datalake store filesystem",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "Lists the contents of the specified path (files and folders).",
                  "fullName": "datalake store filesystem list",
                  "usage": "[options] <accountName> <path>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name to execute the action on"
                    },
                    {
                      "flags": "-p --path <path>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--path",
                      "description": "the full path to the folder to list (e.g. /someFolder or /someFolder/someNestedFolder)"
                    },
                    {
                      "flags": "-l --listSize <listSize>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--listSize",
                      "description": "the optional number of entries to list. The default is all entries, which can potentially take some time for large directories.)"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Gets the specified Data Lake Store file or folder details",
                  "fullName": "datalake store filesystem show",
                  "usage": "[options] <accountName> <path>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name to execute the action on"
                    },
                    {
                      "flags": "-p --path <path>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--path",
                      "description": "the full path to the folder or file to get (e.g. /someFolder or /someFolder/someFile.txt)"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "deletes the specified Data Lake Store file or folder, with the option for recursive delete (if the folder has contents)",
                  "fullName": "datalake store filesystem delete",
                  "usage": "[options] <accountName> <path>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name to execute the action on"
                    },
                    {
                      "flags": "-p --path <path>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--path",
                      "description": "the full path to the folder or file to get (e.g. /someFolder or /someFolder/someFile.txt)"
                    },
                    {
                      "flags": "-r --recurse",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--recurse",
                      "description": "optionally indicates that this should be a recursive delete, which will delete a folder and all contents underneath it."
                    },
                    {
                      "flags": "-q --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "optionally indicates the delete should be immediately performed with no confirmation or prompting. Use carefully."
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "create",
                  "description": "Creates the specified folder or file, with the option to include content in file creation.",
                  "fullName": "datalake store filesystem create",
                  "usage": "[options] <accountName> <path>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name to execute the action on"
                    },
                    {
                      "flags": "-p --path <path>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--path",
                      "description": "the full path to the file to add content to (e.g. /someFolder/someFile.txt)"
                    },
                    {
                      "flags": "-v --value <value>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--value",
                      "description": "optional indicates the contents (as a string) to create the file with. NOTE: This parameter cannot be specified with --folder (-d)"
                    },
                    {
                      "flags": "-d --folder",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--folder",
                      "description": "optionally specify that the item being created is a folder, not a file. If this is not specified, a file will be created. NOTE: This parameter cannot be specified with --encoding (-e) or --value (-v)"
                    },
                    {
                      "flags": "-f --force",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--force",
                      "description": "optionally indicates that the file or folder being created can overwrite the file or folder at path if it already exists (default is false). 'true' must be passed in for the overwrite to work"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "import",
                  "description": "Uploads the specified the specified file, to the target destination in an Azure Data Lake.",
                  "fullName": "datalake store filesystem import",
                  "usage": "[options] <accountName> <path> <destination>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name to execute the action on"
                    },
                    {
                      "flags": "-p --path <path>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--path",
                      "description": "the full local path to the file to import (e.g. /someFolder/someFile.txt or C:somefoldersomeFile.txt)"
                    },
                    {
                      "flags": "-d --destination <destination>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--destination",
                      "description": "the full path in the Data Lake Store where the file should be imported to (e.g. /someFolder/someFile.txt"
                    },
                    {
                      "flags": "-f --force",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--force",
                      "description": "optionally indicates that the file or folder being created can overwrite the file or folder at path if it already exists (default is false). 'true' must be passed in for the overwrite to work"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "concat",
                  "description": "Concatenates the specified list of files into the specified destination file.",
                  "fullName": "datalake store filesystem concat",
                  "usage": "[options] <accountName> <paths> <destination>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name to execute the action on"
                    },
                    {
                      "flags": "-p --paths <paths>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--paths",
                      "description": "a comma seperated list of full paths to concatenate (e.g. '/someFolder/someFile.txt,/somefolder/somefile2.txt,/anotherFolder/newFile.txt')"
                    },
                    {
                      "flags": "-d --destination <destination>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--destination",
                      "description": "specify the target file that all of the files in --paths should be concatenated into (e.g /someFolder/targetFile.txt)"
                    },
                    {
                      "flags": "-f --force",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--force",
                      "description": "optionally indicates that the file or folder being created can overwrite the file or folder at path if it already exists (default is false). 'true' must be passed in for the overwrite to work"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "move",
                  "description": "Moves (renames) the specified file or folder into the specified destination file or folder.",
                  "fullName": "datalake store filesystem move",
                  "usage": "[options] <accountName> <path> <destination>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name to execute the action on"
                    },
                    {
                      "flags": "-p --path <path>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--path",
                      "description": "the path to the file or folder to move (e.g. /someFolder or /someFolder/someFile.txt)"
                    },
                    {
                      "flags": "-d --destination <destination>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--destination",
                      "description": "specify the target location to move the file or folder to"
                    },
                    {
                      "flags": "-f --force",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--force",
                      "description": "optionally indicates that the file or folder being created can overwrite the file or folder at path if it already exists (default is false). 'true' must be passed in for the overwrite to work"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "addcontent",
                  "description": "Appends the specified content to the end of the Data Lake Store file path specified.",
                  "fullName": "datalake store filesystem addcontent",
                  "usage": "[options] <accountName> <path> <value>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name to execute the action on"
                    },
                    {
                      "flags": "-p --path <path>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--path",
                      "description": "the full path to the file to add content to (e.g. /someFolder/someFile.txt)"
                    },
                    {
                      "flags": "-v --value <value>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--value",
                      "description": "the contents to append to the file"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "export",
                  "description": "Downloads the specified file to the target location.",
                  "fullName": "datalake store filesystem export",
                  "usage": "[options] <accountName> <path> <destination>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name to execute the action on"
                    },
                    {
                      "flags": "-p --path <path>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--path",
                      "description": "the full path in the Data Lake Store where the file should be imported to (e.g. /someFolder/someFile.txt"
                    },
                    {
                      "flags": "-d --destination <destination>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--destination",
                      "description": "the full local path to the file to import (e.g. /someFolder/someFile.txt or C:somefoldersomeFile.txt)"
                    },
                    {
                      "flags": "-f --force",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--force",
                      "description": "optionally indicates that the file being created can overwrite the file at path if it already exists (default is false)."
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "read",
                  "description": "Previews the specified Data Lake Store file starting at index 0 (or the specified offset) until the length is reached, displaying the results to the console.",
                  "fullName": "datalake store filesystem read",
                  "usage": "[options] <accountName> <path>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name to execute the action on"
                    },
                    {
                      "flags": "-p --path <path>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--path",
                      "description": "the full path to the file to download (e.g. /someFolder/someFile.txt)"
                    },
                    {
                      "flags": "-l --length <length>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--length",
                      "description": "optionally specify the length, in bytes, to read from the file. If not specified will attempt to display all content after offset. If that length is greater than 1MB a length must be specified."
                    },
                    {
                      "flags": "-o --offset <offset>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--offset",
                      "description": "the optional offset to begin reading at (default is 0)"
                    },
                    {
                      "flags": "-f --force",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--force",
                      "description": "optionally forces previewing of a full file. Use with caution, as this can cause instability and hangs with very large files."
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {
                "expiry": {
                  "name": "expiry",
                  "description": "Commands to manage expiration of your Data Lake Storage FileSystem",
                  "fullName": "datalake store filesystem expiry",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "set",
                      "description": "sets or removes the absolute expiration time of the specified path (files only).",
                      "fullName": "datalake store filesystem expiry set",
                      "usage": "[options] <accountName> <path>",
                      "filePath": "commands/arm/datalakestore/datalakestore.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-n --accountName <accountName>",
                          "required": -18,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--accountName",
                          "description": "the Data Lake Store account name to execute the action on"
                        },
                        {
                          "flags": "-p --path <path>",
                          "required": -11,
                          "optional": 0,
                          "bool": true,
                          "short": "-p",
                          "long": "--path",
                          "description": "the full path to the folder to list (e.g. /someFolder or /someFolder/someNestedFolder)"
                        },
                        {
                          "flags": "-e --expiration <expiration time in ticks since epoch>",
                          "required": -17,
                          "optional": 0,
                          "bool": true,
                          "short": "-e",
                          "long": "--expiration",
                          "description": "the expiration time to set for the file. Values <= 0 or >= 253402300800000 indicate the file will never expire.)"
                        },
                        {
                          "flags": "-s, --subscription <id>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    }
                  ],
                  "categories": {}
                }
              }
            },
            "permissions": {
              "name": "permissions",
              "description": "Commands to manage your Data Lake Storage FileSystem Permissions",
              "fullName": "datalake store permissions",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Gets the specified Data Lake Store folder ACL",
                  "fullName": "datalake store permissions show",
                  "usage": "[options] <accountName> <path>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name to execute the action on"
                    },
                    {
                      "flags": "-p --path <path>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--path",
                      "description": "the full path to the folder or file to get (e.g. /someFolder or /someFolder/someFile.txt)"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Deletes the entire ACL associated with a folder (not including un-named ACL entries)",
                  "fullName": "datalake store permissions delete",
                  "usage": "[options] <accountName> <path>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name to execute the action on"
                    },
                    {
                      "flags": "-p --path <path>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--path",
                      "description": "the full path to the folder to remove ACLs from (e.g. /someFolder)"
                    },
                    {
                      "flags": "-d --defaultAcl",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--defaultAcl",
                      "description": "optionally indicates that the default ACL should be removed instead of the regular ACL. Default is false."
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode (do not ask for delete confirmation)"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "sets the specified Data Lake Store folder ACL (overwriting the previous ACL entries)",
                  "fullName": "datalake store permissions set",
                  "usage": "[options] <accountName> <path> <aclSpec>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name to execute the action on"
                    },
                    {
                      "flags": "-p --path <path>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--path",
                      "description": "the full path to the folder to remove ACLs from (e.g. /someFolder)"
                    },
                    {
                      "flags": "-a --aclSpec <aclSpec>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--aclSpec",
                      "description": "a comma delimited list of fully qualified ACL entries to set in the format [default:]<user>|<group>:<object Id>:<permissions> (e.g 'user:5546499e-795f-4f5f-b411-8179051f8b0a:r-x' or 'default:group:5546499e-795f-4f5f-b411-8179051f8b0a:rwx'). This list must also include default entries (no object ID in the middle)"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode (do not ask for overwrite confirmation)"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {
                "entry": {
                  "name": "entry",
                  "description": "Commands to manage your Data Lake Storage FileSystem granular permissions entries",
                  "fullName": "datalake store permissions entry",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "delete",
                      "description": "deletes the specific ACE entry or entries from the path",
                      "fullName": "datalake store permissions entry delete",
                      "usage": "[options] <accountName> <path> <aclEntries>",
                      "filePath": "commands/arm/datalakestore/datalakestore.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-n --accountName <accountName>",
                          "required": -18,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--accountName",
                          "description": "the Data Lake Store account name to execute the action on"
                        },
                        {
                          "flags": "-p --path <path>",
                          "required": -11,
                          "optional": 0,
                          "bool": true,
                          "short": "-p",
                          "long": "--path",
                          "description": "the full path to the folder to remove ACEs from (e.g. /someFolder)"
                        },
                        {
                          "flags": "-a --aclEntries <aclEntries>",
                          "required": -17,
                          "optional": 0,
                          "bool": true,
                          "short": "-a",
                          "long": "--aclEntries",
                          "description": "a comma delimited list of the fully qualified ACE entry or entries to delete in the format [default:]<user>|<group>:<object Id> (e.g 'user:5546499e-795f-4f5f-b411-8179051f8b0a' or 'default:group:5546499e-795f-4f5f-b411-8179051f8b0a')"
                        },
                        {
                          "flags": "-q, --quiet",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-q",
                          "long": "--quiet",
                          "description": "quiet mode (do not ask for delete confirmation)"
                        },
                        {
                          "flags": "-s, --subscription <id>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    },
                    {
                      "name": "set",
                      "description": "sets the specified Data Lake Store folder ACE entry or entries",
                      "fullName": "datalake store permissions entry set",
                      "usage": "[options] <accountName> <path> <aclEntries>",
                      "filePath": "commands/arm/datalakestore/datalakestore.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-n --accountName <accountName>",
                          "required": -18,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--accountName",
                          "description": "the Data Lake Store account name to execute the action on"
                        },
                        {
                          "flags": "-p --path <path>",
                          "required": -11,
                          "optional": 0,
                          "bool": true,
                          "short": "-p",
                          "long": "--path",
                          "description": "the full path to the folder to set ACEs on (e.g. /someFolder)"
                        },
                        {
                          "flags": "-a --aclEntries <aclEntries>",
                          "required": -17,
                          "optional": 0,
                          "bool": true,
                          "short": "-a",
                          "long": "--aclEntries",
                          "description": "a comma delimited list of the fully qualified ACE entries to set in the format [default:]<user>|<group>:<object Id>:<permissions> (e.g 'user:5546499e-795f-4f5f-b411-8179051f8b0a:r-x' or 'default:group:5546499e-795f-4f5f-b411-8179051f8b0a:rwx')"
                        },
                        {
                          "flags": "-q, --quiet",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-q",
                          "long": "--quiet",
                          "description": "quiet mode (do not ask for overwrite confirmation)"
                        },
                        {
                          "flags": "-s, --subscription <id>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    }
                  ],
                  "categories": {}
                }
              }
            },
            "firewall": {
              "name": "firewall",
              "description": "Commands to manage your Data Lake Storage account firewall rules",
              "fullName": "datalake store firewall",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "adds the specified firewall rule to the specified Data Lake Store account.",
                  "fullName": "datalake store firewall create",
                  "usage": "[options] <accountName> <name> <startIpAddress> <endIpAddress>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-a --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name to execute the action on"
                    },
                    {
                      "flags": "-n --name <firewall rule name>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the firewall rule to add"
                    },
                    {
                      "flags": "-t --startIpAddress <start ip address>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--startIpAddress",
                      "description": "the start of the valid ip range for the firewall rule"
                    },
                    {
                      "flags": "-e, --endIpAddress <end ip address>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--endIpAddress",
                      "description": "the end of the valid ip range for the firewall rule"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "optionally explicitly set the resource group. If not specified, will attempt to discover it."
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "updates the specified firewall rule in the specified Data Lake Store account.",
                  "fullName": "datalake store firewall set",
                  "usage": "[options] <accountName> <name>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-a --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name to execute the action on"
                    },
                    {
                      "flags": "-n --name <firewall rule name>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the firewall rule to update"
                    },
                    {
                      "flags": "-t --startIpAddress <start ip address>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--startIpAddress",
                      "description": "the optional new start of the valid ip range for the firewall rule"
                    },
                    {
                      "flags": "-e, --endIpAddress <end ip address>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--endIpAddress",
                      "description": "the optional new end of the valid ip range for the firewall rule"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "optionally explicitly set the resource group. If not specified, will attempt to discover it."
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "retrieves the specified firewall rule in the specified Data Lake Store account.",
                  "fullName": "datalake store firewall show",
                  "usage": "[options] <accountName> <name>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-a --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name to execute the action on"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "optionally explicitly set the resource group. If not specified, will attempt to discover it."
                    },
                    {
                      "flags": "-n --name <firewall rule name>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the firewall rule to display"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "retrieves all firewall rules in the specified Data Lake Store account.",
                  "fullName": "datalake store firewall list",
                  "usage": "[options] <accountName>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name to execute the action on"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "optionally explicitly set the resource group. If not specified, will attempt to discover it."
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "removes the specified firewall rule in the specified Data Lake Store account.",
                  "fullName": "datalake store firewall delete",
                  "usage": "[options] <accountName> <name>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-a --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name to execute the action on"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the optional resource group to list the accounts in"
                    },
                    {
                      "flags": "-n --name <firewall rule name>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the firewall rule to delete"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode (do not ask for delete confirmation)"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "provider": {
              "name": "provider",
              "description": "Commands to manage your Data Lake Storage account trusted identity providers",
              "fullName": "datalake store provider",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "adds the specified trusted identity provider to the specified Data Lake Store account.",
                  "fullName": "datalake store provider create",
                  "usage": "[options] <accountName> <name> <providerEndpoint>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-a --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name to execute the action on"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "optionally explicitly set the resource group. If not specified, will attempt to discover it."
                    },
                    {
                      "flags": "-n --name <trusted identity provider name>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the trusted identity provider to add"
                    },
                    {
                      "flags": "-e, --providerEndpoint <endpoint>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--providerEndpoint",
                      "description": "the valid trusted provider endpoint in the format: https://sts.windows.net/<provider identity>"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "updates the specified trusted identity provider in the specified Data Lake Store account.",
                  "fullName": "datalake store provider set",
                  "usage": "[options] <accountName> <name> <providerEndpoint>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-a --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name to execute the action on"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "optionally explicitly set the resource group. If not specified, will attempt to discover it."
                    },
                    {
                      "flags": "-n --name <trusted identity provider name>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the trusted identity provider to update"
                    },
                    {
                      "flags": "-e, --providerEndpoint <endpoint>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--providerEndpoint",
                      "description": "the new valid trusted provider endpoint in the format: https://sts.windows.net/<provider identity>"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "retrieves the specified trusted identity provider in the specified Data Lake Store account.",
                  "fullName": "datalake store provider show",
                  "usage": "[options] <accountName> <name>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-a --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name to execute the action on"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "optionally explicitly set the resource group. If not specified, will attempt to discover it."
                    },
                    {
                      "flags": "-n --name <trusted identity provider name>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the trusted identity provider to display"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "retrieves all trusted identity providers in the specified Data Lake Store account.",
                  "fullName": "datalake store provider list",
                  "usage": "[options] <accountName>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name to execute the action on"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "optionally explicitly set the resource group. If not specified, will attempt to discover it."
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "removes the specified trusted identity provider in the specified Data Lake Store account.",
                  "fullName": "datalake store provider delete",
                  "usage": "[options] <accountName> <name>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-a --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name to execute the action on"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the optional resource group to list the accounts in"
                    },
                    {
                      "flags": "-n --name <trusted identity provider name>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the trusted identity provider to delete"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode (do not ask for delete confirmation)"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "account": {
              "name": "account",
              "description": "Commands to manage your Data Lake Storage accounts",
              "fullName": "datalake store account",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "List all Data Lake Store accounts available for your subscription or subscription and resource group",
                  "fullName": "datalake store account list",
                  "usage": "[options]",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the optional resource group to list the accounts in"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Shows a Data Lake Store Account based on account name",
                  "fullName": "datalake store account show",
                  "usage": "[options] <accountName>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the optional resource group to list the accounts in"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Deletes a Data Lake Store Account based on account name",
                  "fullName": "datalake store account delete",
                  "usage": "[options] <accountName>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "the Data Lake Store account name"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the optional resource group to force the command to find the Data Lake Store account to delete in."
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode (do not ask for delete confirmation)"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "create",
                  "description": "Creates a Data Lake Store Account",
                  "fullName": "datalake store account create",
                  "usage": "[options] <accountName> <location> <resource-group>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "The Data Lake Store account name to create"
                    },
                    {
                      "flags": "-l --location <location>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--location",
                      "description": "the location the Data Lake Store account will be created in. Valid values are: North Central US, South Central US, Central US, West Europe, North Europe, West US, East US, East US 2, Japan East, Japan West, Brazil South, Southeast Asia, East Asia, Australia East, Australia Southeast"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the resource group to create the account in"
                    },
                    {
                      "flags": "-d --defaultGroup <defaultGroup>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--defaultGroup",
                      "description": "the optional default permissions group to add to the account when created"
                    },
                    {
                      "flags": "-e --encryption <'UserManaged'|'ServiceManaged'>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--encryption",
                      "description": "optionally indicates what type of encryption to provision the account with, if any. Valid values are UserManaged or ServiceManaged"
                    },
                    {
                      "flags": "-k --keyVaultId <key vault id>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--keyVaultId",
                      "description": "if the encryption type is UserAssigned, this is the id of the key vault the user wishes to use"
                    },
                    {
                      "flags": "-y --keyName <key name>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "short": "-y",
                      "long": "--keyName",
                      "description": "if the encryption type is UserAssigned, this is the key name in the key vault the user wishes to use"
                    },
                    {
                      "flags": "-s --keyVersion <key version>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--keyVersion",
                      "description": "if the encryption type is UserAssigned, this is the key version of the key the user wishes to use"
                    },
                    {
                      "flags": "-t --tags <tags>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--tags",
                      "description": "Tags to set to the the Data Lake Store account. Can be mutliple. In the format of 'name=value'. Name is required and value is optional. For example, -t tag1=value1;tag2"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Updates the properties of an existing Data Lake Store Account",
                  "fullName": "datalake store account set",
                  "usage": "[options] <accountName>",
                  "filePath": "commands/arm/datalakestore/datalakestore.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-n --accountName <accountName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--accountName",
                      "description": "The Data Lake Store account name to update with new tags and/or default permissions group"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the optional resource group to forcibly look for the account to update in"
                    },
                    {
                      "flags": "-d --defaultGroup <defaultGroup>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--defaultGroup",
                      "description": "the optional default permissions group to set in the existing account"
                    },
                    {
                      "flags": "-t --trustedIdProviderState <Enabled|Disabled>",
                      "required": -29,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--trustedIdProviderState",
                      "description": "optionally enable or disable existing trusted identity providers. Valid values are 'Enabled' or 'Disabled'"
                    },
                    {
                      "flags": "-f --firewallState <Enabled|Disabled>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--firewallState",
                      "description": "optionally enable or disable existing firewall rules. Valid values are 'Enabled' or 'Disabled'"
                    },
                    {
                      "flags": "-t --tags <tags>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--tags",
                      "description": "Tags to set to the Data Lake Store account. Can be mutliple. In the format of 'name=value'. Name is required and value is optional. For example, -t tag1=value1;tag2"
                    },
                    {
                      "flags": "--no-tags",
                      "required": 0,
                      "optional": 0,
                      "bool": false,
                      "long": "--no-tags",
                      "description": "remove all existing tags"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        }
      }
    },
    "lab": {
      "name": "lab",
      "description": "Commands to manage your DevTest Labs",
      "fullName": "lab",
      "usage": "[options]",
      "options": [],
      "commands": [],
      "categories": {
        "vms-per-lab-policy": {
          "name": "vms-per-lab-policy",
          "description": "Commands to manage total allowed virtual machines per lab policy",
          "fullName": "lab vms-per-lab-policy",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "set",
              "description": "Set max allowed virtual machines per lab policy.",
              "fullName": "lab vms-per-lab-policy set",
              "usage": "[options]",
              "filePath": "commands/arm/devtestlabs/devTestLabs.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name of the lab"
                },
                {
                  "flags": "-l, --lab-name <lab-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--lab-name",
                  "description": "the lab name"
                },
                {
                  "flags": "-c, --vm-count <vm-count>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--vm-count",
                  "description": "the total vms allowed in the lab"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Get allowed virtual machines per lab policy.",
              "fullName": "lab vms-per-lab-policy show",
              "usage": "[options]",
              "filePath": "commands/arm/devtestlabs/devTestLabs.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name of the lab"
                },
                {
                  "flags": "-l, --lab-name <lab-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--lab-name",
                  "description": "the lab name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete allowed virtual machines per lab policy.",
              "fullName": "lab vms-per-lab-policy delete",
              "usage": "[options]",
              "filePath": "commands/arm/devtestlabs/devTestLabs.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name of the lab"
                },
                {
                  "flags": "-l, --lab-name <lab-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--lab-name",
                  "description": "the lab name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "vms-per-user-policy": {
          "name": "vms-per-user-policy",
          "description": "Commands to manage max allowed virtual machines per user policy",
          "fullName": "lab vms-per-user-policy",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "set",
              "description": "Set allowed virtual machines per user policy.",
              "fullName": "lab vms-per-user-policy set",
              "usage": "[options]",
              "filePath": "commands/arm/devtestlabs/devTestLabs.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name of the lab"
                },
                {
                  "flags": "-l, --lab-name <lab-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--lab-name",
                  "description": "the lab name"
                },
                {
                  "flags": "-c, --vm-count <vm-count>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--vm-count",
                  "description": "the total vms allowed in the lab"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Get allowed virtual machines per user policy.",
              "fullName": "lab vms-per-user-policy show",
              "usage": "[options]",
              "filePath": "commands/arm/devtestlabs/devTestLabs.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name of the lab"
                },
                {
                  "flags": "-l, --lab-name <lab-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--lab-name",
                  "description": "the lab name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete allowed virtual machines per user policy.",
              "fullName": "lab vms-per-user-policy delete",
              "usage": "[options]",
              "filePath": "commands/arm/devtestlabs/devTestLabs.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name of the lab"
                },
                {
                  "flags": "-l, --lab-name <lab-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--lab-name",
                  "description": "the lab name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "vm-size-policy": {
          "name": "vm-size-policy",
          "description": "Commands to manage allowed virtual machine sizes policy",
          "fullName": "lab vm-size-policy",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "set",
              "description": "Set allowed virtual machine sizes policy.",
              "fullName": "lab vm-size-policy set",
              "usage": "[options]",
              "filePath": "commands/arm/devtestlabs/devTestLabs.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name of the lab"
                },
                {
                  "flags": "-l, --lab-name <lab-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--lab-name",
                  "description": "the lab name"
                },
                {
                  "flags": "-z, --vm-sizes <vm-sizes>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-z",
                  "long": "--vm-sizes",
                  "description": "allowed virtual machine sizes, example value: Standard_A0,StandardA1"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Get allowed virtual machine sizes policy.",
              "fullName": "lab vm-size-policy show",
              "usage": "[options]",
              "filePath": "commands/arm/devtestlabs/devTestLabs.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name of the lab"
                },
                {
                  "flags": "-l, --lab-name <lab-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--lab-name",
                  "description": "the lab name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete allowed virtual machine sizes policy.",
              "fullName": "lab vm-size-policy delete",
              "usage": "[options]",
              "filePath": "commands/arm/devtestlabs/devTestLabs.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name of the lab"
                },
                {
                  "flags": "-l, --lab-name <lab-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--lab-name",
                  "description": "the lab name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "auto-shutdown-policy": {
          "name": "auto-shutdown-policy",
          "description": "Commands to manage auto-shutdown policy",
          "fullName": "lab auto-shutdown-policy",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "set",
              "description": "Set virtual machine daily auto-shutdown policy.",
              "fullName": "lab auto-shutdown-policy set",
              "usage": "[options]",
              "filePath": "commands/arm/devtestlabs/devTestLabs.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name of the lab"
                },
                {
                  "flags": "-l, --lab-name <lab-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--lab-name",
                  "description": "the lab name"
                },
                {
                  "flags": "-t, --time <time>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--time",
                  "description": "the time (in UTC) to shutdown virtual machines everyday, example: 1905 means 7:05pm"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Get virtual machine auto-shutdown policy.",
              "fullName": "lab auto-shutdown-policy show",
              "usage": "[options]",
              "filePath": "commands/arm/devtestlabs/devTestLabs.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name of the lab"
                },
                {
                  "flags": "-l, --lab-name <lab-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--lab-name",
                  "description": "the lab name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete virtual machine auto-shutdown policy.",
              "fullName": "lab auto-shutdown-policy delete",
              "usage": "[options]",
              "filePath": "commands/arm/devtestlabs/devTestLabs.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name of the lab"
                },
                {
                  "flags": "-l, --lab-name <lab-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--lab-name",
                  "description": "the lab name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "auto-start-policy": {
          "name": "auto-start-policy",
          "description": "Commands to manage auto-start policy",
          "fullName": "lab auto-start-policy",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "set",
              "description": "Set virtual machine auto-start policy.",
              "fullName": "lab auto-start-policy set",
              "usage": "[options]",
              "filePath": "commands/arm/devtestlabs/devTestLabs.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name of the lab"
                },
                {
                  "flags": "-l, --lab-name <lab-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--lab-name",
                  "description": "the lab name"
                },
                {
                  "flags": "-w, --weekly <weekly>.",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-w",
                  "long": "--weekly",
                  "description": "selected weekdays to start machines. example: Monday,Friday means start machines on Monday and Friday."
                },
                {
                  "flags": "-t, --time <time>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--time",
                  "description": "the time (in UTC) to start virtual machines on the selected weekday, example: 0815 means 8:15am"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Get virtual machine auto-start policy.",
              "fullName": "lab auto-start-policy show",
              "usage": "[options]",
              "filePath": "commands/arm/devtestlabs/devTestLabs.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name of the lab"
                },
                {
                  "flags": "-l, --lab-name <lab-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--lab-name",
                  "description": "the lab name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete virtual machine auto-start policy.",
              "fullName": "lab auto-start-policy delete",
              "usage": "[options]",
              "filePath": "commands/arm/devtestlabs/devTestLabs.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the resource group name of the lab"
                },
                {
                  "flags": "-l, --lab-name <lab-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--lab-name",
                  "description": "the lab name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        }
      }
    },
    "feature": {
      "name": "feature",
      "description": "Commands to manage your features",
      "fullName": "feature",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "list",
          "description": "List all features available for your subscription",
          "fullName": "feature list",
          "usage": "[options]",
          "filePath": "commands/arm/feature/feature.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "show",
          "description": "Shows a feature",
          "fullName": "feature show",
          "usage": "[options] <providerName> <featureName>",
          "filePath": "commands/arm/feature/feature.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-p --providerName <providerName>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--providerName",
              "description": "the resource provider name"
            },
            {
              "flags": "-n --featureName <featureName>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--featureName",
              "description": "the feature name"
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "register",
          "description": "Registers a previewed feature of a resource provider.",
          "fullName": "feature register",
          "usage": "[options] <providerName> <featureName>",
          "filePath": "commands/arm/feature/feature.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-p --providerName <providerName>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--providerName",
              "description": "the resource provider name"
            },
            {
              "flags": "-n --name <featureName>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the feature name"
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        }
      ],
      "categories": {}
    },
    "group": {
      "name": "group",
      "description": "Commands to manage your resource groups",
      "fullName": "group",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "create",
          "description": "Creates a new resource group",
          "fullName": "group create",
          "usage": "[options] <name> <location>",
          "filePath": "commands/arm/group/group.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the resource group name"
            },
            {
              "flags": "-l --location <location>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-l",
              "long": "--location",
              "description": "the location where we will create the group"
            },
            {
              "flags": "-d --deployment-name <deployment-name>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--deployment-name",
              "description": "the name of the deployment we will create (only valid when a template is used)"
            },
            {
              "flags": "-f --template-file <template-file>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-f",
              "long": "--template-file",
              "description": "the path to the template file in the file system",
              "fileRelatedOption": true
            },
            {
              "flags": "--template-uri <template-uri>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--template-uri",
              "description": "the uri to the remote template file"
            },
            {
              "flags": "--template-version <template-version>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "long": "--template-version",
              "description": "the content version of the template"
            },
            {
              "flags": "-p --parameters <parameters>",
              "required": -17,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--parameters",
              "description": "a JSON-formatted string containing parameters"
            },
            {
              "flags": "-e --parameters-file <parametersFile>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-e",
              "long": "--parameters-file",
              "description": "a file containing parameters",
              "fileRelatedOption": true
            },
            {
              "flags": "-t --tags <tags>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--tags",
              "description": "Tags to set to the resource group. Can be multiple. In the format of 'name=value'. Name is required and value is optional. For example, -t tag1=value1;tag2"
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "set",
          "description": "Set tags to a resource group",
          "fullName": "group set",
          "usage": "[options] <name> <tags>",
          "filePath": "commands/arm/group/group.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the resource group name"
            },
            {
              "flags": "-t --tags <tags>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--tags",
              "description": "Tags to set to the resource group. Can be multiple. In the format of 'name=value'. Name is required and value is optional. For example, -t tag1=value1;tag2"
            },
            {
              "flags": "--no-tags",
              "required": 0,
              "optional": 0,
              "bool": false,
              "long": "--no-tags",
              "description": "remove all existing tags"
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "delete",
          "description": "Deletes a resource group",
          "fullName": "group delete",
          "usage": "[options] <name>",
          "filePath": "commands/arm/group/group.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the resource group name"
            },
            {
              "flags": "--nowait",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--nowait",
              "description": "does not wait for the delete operation to complete. Returns as soon as the intial request is received by the server."
            },
            {
              "flags": "-q, --quiet",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-q",
              "long": "--quiet",
              "description": "quiet mode (do not ask for delete confirmation)"
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "list",
          "description": "Lists the resource groups for your subscription",
          "fullName": "group list",
          "usage": "[options]",
          "filePath": "commands/arm/group/group.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-d, --details",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--details",
              "description": "show additional resource group details such as resources, permissions etc."
            },
            {
              "flags": "-t --tags <tags>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--tags",
              "description": "Tag to use to filter to the resource group. Can only take 1 tag. In the format of \"name=value\". Name is required and value is optional. For example, -t tag1 or -t tag1=value1."
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "show",
          "description": "Shows a resource group for your subscription",
          "fullName": "group show",
          "usage": "[options] <name>",
          "filePath": "commands/arm/group/group.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the resource group name"
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "export",
          "description": "Captures a resource group as a template, and saves it as file on disk.",
          "fullName": "group export",
          "usage": "[options] <name> [directory]",
          "filePath": "commands/arm/group/group.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the resource group name"
            },
            {
              "flags": "-d --directory [directory]",
              "required": 0,
              "optional": -16,
              "bool": true,
              "short": "-d",
              "long": "--directory",
              "description": "the name of the destination directory. If not specified, template file will be saved in the current directory."
            },
            {
              "flags": "-c --includeComments",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-c",
              "long": "--includeComments",
              "description": "export template with comments."
            },
            {
              "flags": "-p --includeParameterDefaultValue",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--includeParameterDefaultValue",
              "description": "export template parameter with default value"
            },
            {
              "flags": "-q --quiet",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-q",
              "long": "--quiet",
              "description": "quiet mode (do not prompt for overwrite if output file exists)"
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        }
      ],
      "categories": {
        "deployment": {
          "name": "deployment",
          "description": "Commands to manage your deployment in a resource group",
          "fullName": "group deployment",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Creates a deployment",
              "fullName": "group deployment create",
              "usage": "[options] [resource-group] [name]",
              "filePath": "commands/arm/group/group.deployment.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resource-group>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the deployment"
                },
                {
                  "flags": "-f --template-file <template-file>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--template-file",
                  "description": "the path to the template file in the file system",
                  "fileRelatedOption": true
                },
                {
                  "flags": "--template-uri <template-uri>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--template-uri",
                  "description": "the uri to the remote template file"
                },
                {
                  "flags": "--template-version <template-version>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "long": "--template-version",
                  "description": "the content version of the template"
                },
                {
                  "flags": "-p --parameters <parameters>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--parameters",
                  "description": "a JSON-formatted string containing parameters"
                },
                {
                  "flags": "-e --parameters-file <parametersFile>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--parameters-file",
                  "description": "a file containing parameters",
                  "fileRelatedOption": true
                },
                {
                  "flags": "-m --mode <mode>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--mode",
                  "description": "the deployment mode: specify one of Incremental or Complete. If no mode is specified, Incremental is used as default. When Complete mode is used, all the resources in the specified resource group, which are not included in the template, will be deleted."
                },
                {
                  "flags": "-d --debug-setting <debugSetting>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--debug-setting",
                  "description": "the debug setting for deployment logs. Valid values include RequestContent, ResponseContent, All or None. None is the default value. When All is specified, both request content and response content will be logged, which will be visible in deployment operations."
                },
                {
                  "flags": "-q --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode (when complete mode is specified, do not ask for deployment confirmation)"
                },
                {
                  "flags": "--nowait",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--nowait",
                  "description": "does not wait for the deployment to complete. Returns as soon as the deployment is created"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list",
              "description": "Gets deployments",
              "fullName": "group deployment list",
              "usage": "[options] <resource-group> [state]",
              "filePath": "commands/arm/group/group.deployment.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group."
                },
                {
                  "flags": "--state <state>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--state",
                  "description": "filter the deployments by provisioning state (valid values are Accepted, Running, Failed, and Succeeded)"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "subscription containing deployments to list (optional)"
                }
              ]
            },
            {
              "name": "show",
              "description": "Shows a deployment",
              "fullName": "group deployment show",
              "usage": "[options] <resource-group> [deployment-name]",
              "filePath": "commands/arm/group/group.deployment.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group."
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the deployment (if not specified, the most recent deployment is shown)"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "subscription containing the deployment to display (optional)"
                }
              ]
            },
            {
              "name": "stop",
              "description": "Stops a deployment",
              "fullName": "group deployment stop",
              "usage": "[options] <resource-group> [deployment-name]",
              "filePath": "commands/arm/group/group.deployment.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-q --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode (do not ask for stop deployment confirmation)"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the deployment (if not specified, the currently running deployment is stopped)"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Deletes a deployment",
              "fullName": "group deployment delete",
              "usage": "[options] <resource-group> <deployment-name>",
              "filePath": "commands/arm/group/group.deployment.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group."
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the deployment."
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode (do not ask for delete confirmation)"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "subscription containing the deployment to display (optional)"
                }
              ]
            }
          ],
          "categories": {
            "template": {
              "name": "template",
              "description": "Commands to manage your deployment template in a resource group",
              "fullName": "group deployment template",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "download",
                  "description": "Downloads a resource group deployment template",
                  "fullName": "group deployment template download",
                  "usage": "[options] [resource-group] [name] [directory]",
                  "filePath": "commands/arm/group/group.deployment.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g --resource-group <resourceGroup>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group."
                    },
                    {
                      "flags": "-n --name <name>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the deployment to download"
                    },
                    {
                      "flags": "-d --directory <directory>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--directory",
                      "description": "the name of the destination directory. If not specified, template file will be saved in the current directory."
                    },
                    {
                      "flags": "-q --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode (do not prompt for overwrite if output file exists)"
                    },
                    {
                      "flags": "--subscription <subscription>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--subscription",
                      "description": "subscription containing the deployment to display (optional)"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "operation": {
              "name": "operation",
              "description": "Commands to list deployment operations in a resource group",
              "fullName": "group deployment operation",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "Lists operations in a deployment",
                  "fullName": "group deployment operation list",
                  "usage": "[options] [resource-group] [name]",
                  "filePath": "commands/arm/group/group.deployment.operation.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n --name <name>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the deployment"
                    },
                    {
                      "flags": "--subscription <subscription>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "log": {
          "name": "log",
          "description": "Commands to manage resource group logs",
          "fullName": "group log",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "show",
              "description": "Retrieves and shows logs for resource group operations",
              "fullName": "group log show",
              "usage": "[options] [name]",
              "filePath": "commands/arm/group/group.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the resource group name"
                },
                {
                  "flags": "-a --all",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--all",
                  "description": "returns logs for all operations (including CRUD and deployment)"
                },
                {
                  "flags": "-l --last-deployment",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--last-deployment",
                  "description": "returns logs for the last deployment"
                },
                {
                  "flags": "-d --deployment <name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--deployment",
                  "description": "the name of the deployment whose logs you want to see"
                },
                {
                  "flags": "-s --subscription <subscription>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "template": {
          "name": "template",
          "description": "Commands to manage your local or gallery resource group template",
          "fullName": "group template",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "Lists gallery resource group templates",
              "fullName": "group template list",
              "usage": "[options]",
              "filePath": "commands/arm/group/group.template.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-c --category [category]",
                  "required": 0,
                  "optional": -15,
                  "bool": true,
                  "short": "-c",
                  "long": "--category",
                  "description": "the category of the templates to list"
                },
                {
                  "flags": "-p --publisher [publisher]",
                  "required": 0,
                  "optional": -16,
                  "bool": true,
                  "short": "-p",
                  "long": "--publisher",
                  "description": "the publisher of the templates to list"
                }
              ]
            },
            {
              "name": "show",
              "description": "Shows a gallery resource group template",
              "fullName": "group template show",
              "usage": "[options] <name>",
              "filePath": "commands/arm/group/group.template.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of template to show"
                }
              ]
            },
            {
              "name": "download",
              "description": "Downloads a gallery resource group template",
              "fullName": "group template download",
              "usage": "[options] [name] [directory]",
              "filePath": "commands/arm/group/group.template.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the template to download"
                },
                {
                  "flags": "-d --directory <directory>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--directory",
                  "description": "the name of the destination directory"
                },
                {
                  "flags": "-q --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode (do not prompt for overwrite if output file exists)"
                }
              ]
            },
            {
              "name": "validate",
              "description": "Validates a template to see whether it's using the right syntax, resource providers, resource types, etc.",
              "fullName": "group template validate",
              "usage": "[options] <resource-group>",
              "filePath": "commands/arm/group/group.template.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resource-group>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-f --template-file <template-file>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--template-file",
                  "description": "the path to the template file in the file system",
                  "fileRelatedOption": true
                },
                {
                  "flags": "--template-uri <template-uri>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--template-uri",
                  "description": "the uri to the remote template file"
                },
                {
                  "flags": "--template-version <template-version>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "long": "--template-version",
                  "description": "the content version of the template"
                },
                {
                  "flags": "-p --parameters <parameters>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--parameters",
                  "description": "a JSON-formatted string containing parameters"
                },
                {
                  "flags": "-e --parameters-file <parametersFile>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--parameters-file",
                  "description": "a file containing parameters",
                  "fileRelatedOption": true
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        }
      }
    },
    "hdinsight": {
      "name": "hdinsight",
      "description": "Commands to manage HDInsight clusters and jobs",
      "fullName": "hdinsight",
      "usage": "[options]",
      "options": [],
      "commands": [],
      "categories": {
        "cluster": {
          "name": "cluster",
          "description": "Commands to manage HDInsight clusters",
          "fullName": "hdinsight cluster",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a cluster in a resource group",
              "fullName": "hdinsight cluster create",
              "usage": "[options] <clusterName>",
              "filePath": "commands/arm/hdinsight/hdinsight.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resource-group>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-c, --clusterName <clusterName>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--clusterName",
                  "description": "HDInsight cluster name"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "Data center location for the cluster"
                },
                {
                  "flags": "-y, --osType <osType>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-y",
                  "long": "--osType",
                  "description": "HDInsight cluster operating system - 'Windows' or 'Linux'"
                },
                {
                  "flags": "--version <version>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "long": "--version",
                  "description": "HDInsight cluster version"
                },
                {
                  "flags": "--clusterType <clusterType>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--clusterType",
                  "description": "HDInsight cluster type. Hadoop | HBase | Spark | Storm"
                },
                {
                  "flags": "--clusterTier <clusterTier>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--clusterTier",
                  "description": "HDInsight cluster tier. Standard | Premium"
                },
                {
                  "flags": "--defaultStorageAccountName <storageAccountName>",
                  "required": -29,
                  "optional": 0,
                  "bool": true,
                  "long": "--defaultStorageAccountName",
                  "description": "Fully Qualified Domain Name of the storage account to use for default HDInsight storage. For example, \"accountName.azuredatalakestore.net\" or \"accountName.blob.core.windows.net\""
                },
                {
                  "flags": "--defaultStorageAccountKey <storageAccountKey>",
                  "required": -28,
                  "optional": 0,
                  "bool": true,
                  "long": "--defaultStorageAccountKey",
                  "description": "Azure Storage key (required only for clusters using Azure Storage as default storage)"
                },
                {
                  "flags": "--defaultStorageContainer <storageContainer>",
                  "required": -27,
                  "optional": 0,
                  "bool": true,
                  "long": "--defaultStorageContainer",
                  "description": "Azure Storage container name (required only for clusters using Azure Storage as default storage)"
                },
                {
                  "flags": "--defaultStorageRootPath <defaultStorageRootPath>",
                  "required": -26,
                  "optional": 0,
                  "bool": true,
                  "long": "--defaultStorageRootPath",
                  "description": "Path-prefix in the Azure Data Lake Store account that this cluster will use as default File System (required only for clusters using Azure Data Lake Store as default storage)"
                },
                {
                  "flags": "--servicePrincipalObjectId <servicePrincipalObjectId>",
                  "required": -28,
                  "optional": 0,
                  "bool": true,
                  "long": "--servicePrincipalObjectId",
                  "description": "Object Id of the service principal used to access Azure Data Lake Store (required only for Data Lake Store enabled clusters)"
                },
                {
                  "flags": "--servicePrincipalTenant <servicePrincipalTenant>",
                  "required": -26,
                  "optional": 0,
                  "bool": true,
                  "long": "--servicePrincipalTenant",
                  "description": "Service principal AAD Tenant used to access Azure Data Lake Store For example, \"https://login.windows.net/<tenantId>\" (required only for Data Lake Store enabled clusters)"
                },
                {
                  "flags": "--servicePrincipalCertFilePath <servicePrincipalCertFilePath>",
                  "required": -32,
                  "optional": 0,
                  "bool": true,
                  "long": "--servicePrincipalCertFilePath",
                  "description": "Service principal certificate file path used to access Azure Data Lake Store (required only for Data Lake Store enabled clusters)"
                },
                {
                  "flags": "--servicePrincipalCertPassword <servicePrincipalCertPassword>",
                  "required": -32,
                  "optional": 0,
                  "bool": true,
                  "long": "--servicePrincipalCertPassword",
                  "description": "Service principal certificate password used to access Azure Data Lake Store (required only for Data Lake Store enabled clusters)"
                },
                {
                  "flags": "--headNodeSize <headNodeSize>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--headNodeSize",
                  "description": "(Optional) Head node size for the cluster"
                },
                {
                  "flags": "--workerNodeCount <workerNodeCount>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "long": "--workerNodeCount",
                  "description": "Number of worker nodes to use for the cluster"
                },
                {
                  "flags": "--workerNodeSize <workerNodeSize>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--workerNodeSize",
                  "description": "(Optional) Worker node size for the cluster)"
                },
                {
                  "flags": "--zookeeperNodeSize <zookeeperNodeSize>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--zookeeperNodeSize",
                  "description": "(Optional) Zookeeper node size for the cluster"
                },
                {
                  "flags": "--userName <userName>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--userName",
                  "description": "Cluster username"
                },
                {
                  "flags": "--password <password>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--password",
                  "description": "Cluster password"
                },
                {
                  "flags": "--sshUserName <sshUserName>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--sshUserName",
                  "description": "SSH username (only for Linux clusters)"
                },
                {
                  "flags": "--sshPassword <sshPassword>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--sshPassword",
                  "description": "SSH password (only for Linux clusters)"
                },
                {
                  "flags": "--sshPublicKey <sshPublicKey>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--sshPublicKey",
                  "description": "SSH public key (only for Linux clusters)"
                },
                {
                  "flags": "--rdpUserName <rdpUserName>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--rdpUserName",
                  "description": "RDP username (only for Windows clusters)"
                },
                {
                  "flags": "--rdpPassword <rdpPassword>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--rdpPassword",
                  "description": "RDP password (only for Windows clusters)"
                },
                {
                  "flags": "--rdpAccessExpiry <rdpAccessExpiry>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "long": "--rdpAccessExpiry",
                  "description": "RDP access expiry. For example 12/12/2015 (only for Windows clusters)"
                },
                {
                  "flags": "--virtualNetworkId <virtualNetworkId>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "long": "--virtualNetworkId",
                  "description": "(Optional) Virtual network ID for the cluster. Value is a GUID for Windows cluster and ARM resource ID for Linux cluster) "
                },
                {
                  "flags": "--subnetName <subnetName>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--subnetName",
                  "description": "(Optional) Subnet for the cluster"
                },
                {
                  "flags": "--additionalStorageAccounts <additionalStorageAccounts>",
                  "required": -29,
                  "optional": 0,
                  "bool": true,
                  "long": "--additionalStorageAccounts",
                  "description": "(Optional) Additional storage accounts. Can be multiple. In the format of 'accountName#accountKey'. For example, --additionalStorageAccounts \"acc1#key1;acc2#key2\""
                },
                {
                  "flags": "--hiveMetastoreServerName <hiveMetastoreServerName>",
                  "required": -27,
                  "optional": 0,
                  "bool": true,
                  "long": "--hiveMetastoreServerName",
                  "description": "(Optional) SQL Server name for the external metastore for Hive"
                },
                {
                  "flags": "--hiveMetastoreDatabaseName <hiveMetastoreDatabaseName>",
                  "required": -29,
                  "optional": 0,
                  "bool": true,
                  "long": "--hiveMetastoreDatabaseName",
                  "description": "(Optional) Database name for the external metastore for Hive"
                },
                {
                  "flags": "--hiveMetastoreUserName <hiveMetastoreUserName>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "long": "--hiveMetastoreUserName",
                  "description": "(Optional) Database username for the external metastore for Hive"
                },
                {
                  "flags": "--hiveMetastorePassword <hiveMetastorePassword>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "long": "--hiveMetastorePassword",
                  "description": "(Optional) Database password for the external metastore for Hive"
                },
                {
                  "flags": "--oozieMetastoreServerName <oozieMetastoreServerName>",
                  "required": -28,
                  "optional": 0,
                  "bool": true,
                  "long": "--oozieMetastoreServerName",
                  "description": "(Optional) SQL Server name for the external metastore for Oozie"
                },
                {
                  "flags": "--oozieMetastoreDatabaseName <oozieMetastoreDatabaseName>",
                  "required": -30,
                  "optional": 0,
                  "bool": true,
                  "long": "--oozieMetastoreDatabaseName",
                  "description": "(Optional) Database name for the external metastore for Oozie"
                },
                {
                  "flags": "--oozieMetastoreUserName <oozieMetastoreUserName>",
                  "required": -26,
                  "optional": 0,
                  "bool": true,
                  "long": "--oozieMetastoreUserName",
                  "description": "(Optional) Database username for the external metastore for Oozie"
                },
                {
                  "flags": "--oozieMetastorePassword <oozieMetastorePassword>",
                  "required": -26,
                  "optional": 0,
                  "bool": true,
                  "long": "--oozieMetastorePassword",
                  "description": "(Optional) Database password for the external metastore for Oozie"
                },
                {
                  "flags": "--configurationPath <configurationPath>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--configurationPath",
                  "description": "(Optional) HDInsight cluster configuration file path"
                },
                {
                  "flags": "--domain <domain>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--domain",
                  "description": "(Optional) Active Directory domain name (for Secure Clusters)"
                },
                {
                  "flags": "--organizationalUnitDN <organizationalUnitDN>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "long": "--organizationalUnitDN",
                  "description": "(Optional) Distinguished Name for OU to use for creating principals (for Secure Clusters)"
                },
                {
                  "flags": "--ldapsUrls <ldapsUrls>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--ldapsUrls",
                  "description": "(Optional) List of comma separated secure LDAP URLs (for Secure Clusters)"
                },
                {
                  "flags": "--domainUsername <domainUsername>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--domainUsername",
                  "description": "(Optional) Active Directory domain user name (for Secure Clusters)"
                },
                {
                  "flags": "--domainUserPassword <domainUserPassword>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "long": "--domainUserPassword",
                  "description": "(Optional) Active Directory domain user password (for Secure Clusters)"
                },
                {
                  "flags": "--clusterUsersGroupDNs <clusterUsersGroupDNs>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "long": "--clusterUsersGroupDNs",
                  "description": "(Optional) List of comma separated user groups that can access the cluster (for Secure Clusters)"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription id"
                },
                {
                  "flags": "--tags <tags>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--tags",
                  "description": "Tags to set to the cluster. Can be multiple. In the format of 'name=value'. Name is required and value is optional. For example, --tags tag1=value1;tag2"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a cluster",
              "fullName": "hdinsight cluster delete",
              "usage": "[options] <clusterName>",
              "filePath": "commands/arm/hdinsight/hdinsight.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resource-group>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "--clusterName <clusterName>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--clusterName",
                  "description": "Cluster name"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode (do not ask for delete confirmation)"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription id"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show cluster details",
              "fullName": "hdinsight cluster show",
              "usage": "[options] <clusterName>",
              "filePath": "commands/arm/hdinsight/hdinsight.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resource-group>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-c, --clusterName <clusterName>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--clusterName",
                  "description": "HDInsight cluster name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription id"
                }
              ]
            },
            {
              "name": "list",
              "description": "List all the clusters (in a specific resource group if provided) .",
              "fullName": "hdinsight cluster list",
              "usage": "[options]",
              "filePath": "commands/arm/hdinsight/hdinsight.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resource-group>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription id"
                }
              ]
            },
            {
              "name": "resize",
              "description": "Resizes the cluster",
              "fullName": "hdinsight cluster resize",
              "usage": "[options] <clusterName> <targetInstanceCount>",
              "filePath": "commands/arm/hdinsight/hdinsight.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resource-group>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-c, --clusterName <clusterName>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--clusterName",
                  "description": "HDInsight cluster name"
                },
                {
                  "flags": "--targetInstanceCount <targetInstanceCount>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--targetInstanceCount",
                  "description": "Target instance count."
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription id"
                }
              ]
            },
            {
              "name": "enable-http-access",
              "description": "Enable HTTP access for cluster",
              "fullName": "hdinsight cluster enable-http-access",
              "usage": "[options] <clusterName> <userName> <password>",
              "filePath": "commands/arm/hdinsight/hdinsight.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resource-group>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-c, --clusterName <clusterName>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--clusterName",
                  "description": "HDInsight cluster name"
                },
                {
                  "flags": "--userName <userName>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--userName",
                  "description": "Cluster username"
                },
                {
                  "flags": "--password <password>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--password",
                  "description": "Cluster password"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription id"
                }
              ]
            },
            {
              "name": "disable-http-access",
              "description": "Disable HTTP access for cluster",
              "fullName": "hdinsight cluster disable-http-access",
              "usage": "[options] <clusterName>",
              "filePath": "commands/arm/hdinsight/hdinsight.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resource-group>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-c, --clusterName <clusterName>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--clusterName",
                  "description": "HDInsight cluster name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription id"
                }
              ]
            },
            {
              "name": "enable-rdp-access",
              "description": "Enable RDP access for cluster",
              "fullName": "hdinsight cluster enable-rdp-access",
              "usage": "[options] <clusterName> <rdpUserName> <rdpPassword> <rdpExpiryDate>",
              "filePath": "commands/arm/hdinsight/hdinsight.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resource-group>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-c, --clusterName <clusterName>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--clusterName",
                  "description": "HDInsight cluster name"
                },
                {
                  "flags": "--rdpUserName <rdpUserName>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--rdpUserName",
                  "description": "RDP username"
                },
                {
                  "flags": "--rdpPassword <rdpPassword>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--rdpPassword",
                  "description": "RDP password"
                },
                {
                  "flags": "--rdpExpiryDate <rdpExpiryDate>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--rdpExpiryDate",
                  "description": "RDP access expiry date"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription id"
                }
              ]
            },
            {
              "name": "disable-rdp-access",
              "description": "Disable HTTP access for cluster",
              "fullName": "hdinsight cluster disable-rdp-access",
              "usage": "[options] <clusterName>",
              "filePath": "commands/arm/hdinsight/hdinsight.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resource-group>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-c, --clusterName <clusterName>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--clusterName",
                  "description": "HDInsight cluster name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription id"
                }
              ]
            }
          ],
          "categories": {}
        },
        "script-action": {
          "name": "script-action",
          "description": "Commands to manage HDInsight script actions",
          "fullName": "hdinsight script-action",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Submits script action",
              "fullName": "hdinsight script-action create",
              "usage": "[options] <clusterName>",
              "filePath": "commands/arm/hdinsight/hdinsight.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-c, --clusterName <clusterName>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--clusterName",
                  "description": "HDInsight cluster name"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Script name"
                },
                {
                  "flags": "-u, --uri <uri>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--uri",
                  "description": "Script URI"
                },
                {
                  "flags": "-p, --parameters <parameters>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--parameters",
                  "description": "(Optional) Script parameters"
                },
                {
                  "flags": "-t, --nodeTypes <nodeTypes>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--nodeTypes",
                  "description": "Specifies the nodes on which this cmdlet applies the action separated by \";\". For example, \"headnode;workernode\" is a valid input."
                },
                {
                  "flags": "-a, --applicationName <applicationName>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--applicationName",
                  "description": "Application name. When application name is specified, persistOnSuccess cannot be specified, and nodeTypes must contain only \"edgenode\""
                },
                {
                  "flags": "--persistOnSuccess",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--persistOnSuccess",
                  "description": "When persistOnSuccess is specified, the script action will be persisted if it successfully executes on the cluster."
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription id"
                }
              ]
            }
          ],
          "categories": {
            "persisted": {
              "name": "persisted",
              "description": "Commands to manage HDInsight persisted script actions",
              "fullName": "hdinsight script-action persisted",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "Lists all persisted script actions",
                  "fullName": "hdinsight script-action persisted list",
                  "usage": "[options] <clusterName>",
                  "filePath": "commands/arm/hdinsight/hdinsight.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "The name of the resource group"
                    },
                    {
                      "flags": "-c, --clusterName <clusterName>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--clusterName",
                      "description": "HDInsight cluster name"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "The subscription id"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Shows a persisted script action",
                  "fullName": "hdinsight script-action persisted show",
                  "usage": "[options] <clusterName> <name>",
                  "filePath": "commands/arm/hdinsight/hdinsight.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "The name of the resource group"
                    },
                    {
                      "flags": "-c, --clusterName <clusterName>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--clusterName",
                      "description": "HDInsight cluster name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "Script name"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "The subscription id"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Promotes script action to persisted",
                  "fullName": "hdinsight script-action persisted set",
                  "usage": "[options] <clusterName> <scriptExecutionId>",
                  "filePath": "commands/arm/hdinsight/hdinsight.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "The name of the resource group"
                    },
                    {
                      "flags": "-c, --clusterName <clusterName>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--clusterName",
                      "description": "HDInsight cluster name"
                    },
                    {
                      "flags": "-e, --scriptExecutionId <scriptExecutionId>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--scriptExecutionId",
                      "description": "Script execution id"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "The subscription id"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Deletes persisted script",
                  "fullName": "hdinsight script-action persisted delete",
                  "usage": "[options] <clusterName> <name>",
                  "filePath": "commands/arm/hdinsight/hdinsight.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "The name of the resource group"
                    },
                    {
                      "flags": "-c, --clusterName <clusterName>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--clusterName",
                      "description": "HDInsight cluster name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "Script name"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "The subscription id"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "history": {
              "name": "history",
              "description": "Commands to manage HDInsight script action history",
              "fullName": "hdinsight script-action history",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "Lists latest script action history",
                  "fullName": "hdinsight script-action history list",
                  "usage": "[options] <clusterName>",
                  "filePath": "commands/arm/hdinsight/hdinsight.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "The name of the resource group"
                    },
                    {
                      "flags": "-c, --clusterName <clusterName>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--clusterName",
                      "description": "HDInsight cluster name"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "The subscription id"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Shows script execution detail",
                  "fullName": "hdinsight script-action history show",
                  "usage": "[options] <clusterName> <scriptExecutionId>",
                  "filePath": "commands/arm/hdinsight/hdinsight.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "The name of the resource group"
                    },
                    {
                      "flags": "-c, --clusterName <clusterName>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--clusterName",
                      "description": "HDInsight cluster name"
                    },
                    {
                      "flags": "-e, --scriptExecutionId <scriptExecutionId>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--scriptExecutionId",
                      "description": "Script execution id"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "The subscription id"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "config": {
          "name": "config",
          "description": "Commands to manage HDInsight cluster configuration",
          "fullName": "hdinsight config",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Creates a persisted Azure HDInsight cluster configuration file.",
              "fullName": "hdinsight config create",
              "usage": "[options] <configFilePath> <overwrite>",
              "filePath": "commands/arm/hdinsight/hdinsight.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--configFilePath <configFilePath>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--configFilePath",
                  "description": "HdInsight configuration file path"
                },
                {
                  "flags": "--overwrite <overwrite>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--overwrite",
                  "description": "Overwrites existing configuration file"
                }
              ]
            },
            {
              "name": "add-config-values",
              "description": "Adds a Hadoop configuration value customization or a Hive shared library customization to an HDInsight cluster configuration. Each component config is in the format of 'name=value'. For example, parameter1=value1;parameter2=value2",
              "fullName": "hdinsight config add-config-values",
              "usage": "[options] <configFilePath>",
              "filePath": "commands/arm/hdinsight/hdinsight.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--configFilePath <configFilePath>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--configFilePath",
                  "description": "Configuration file path"
                },
                {
                  "flags": "--core-site <core-site>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--core-site",
                  "description": "Config values in the format of 'name=value'"
                },
                {
                  "flags": "--hive-site <hive-site>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--hive-site",
                  "description": "Config values in the format of 'name=value'"
                },
                {
                  "flags": "--clusterIdentity <clusterIdentity>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "long": "--clusterIdentity",
                  "description": "Config values in the format of 'name=value'"
                },
                {
                  "flags": "--hive-env <hive-env>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--hive-env",
                  "description": "Config values in the format of 'name=value'"
                },
                {
                  "flags": "--hdfs-site <hdfs-site>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--hdfs-site",
                  "description": "Config values in the format of 'name=value'"
                },
                {
                  "flags": "--hbase-env <hbase-env>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--hbase-env",
                  "description": "Config values in the format of 'name=value'"
                },
                {
                  "flags": "--hbase-site <hbase-site>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--hbase-site",
                  "description": "Config values in the format of 'name=value'"
                },
                {
                  "flags": "--mapred-site <mapred-site>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--mapred-site",
                  "description": "Config values in the format of 'name=value'"
                },
                {
                  "flags": "--oozie-env <oozie-env>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--oozie-env",
                  "description": "Config values in the format of 'name=value'"
                },
                {
                  "flags": "--oozie-site <oozie-site>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--oozie-site",
                  "description": "Config values in the format of 'name=value'"
                },
                {
                  "flags": "--storm-site <storm-site>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--storm-site",
                  "description": "Config values in the format of 'name=value'"
                },
                {
                  "flags": "--tez-site <tez-site>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--tez-site",
                  "description": "Config values in the format of 'name=value'"
                },
                {
                  "flags": "--webhcat-site <webhcat-site>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--webhcat-site",
                  "description": "Config values in the format of 'name=value'"
                },
                {
                  "flags": "--gateway <gateway>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "long": "--gateway",
                  "description": "Config values in the format of 'name=value'"
                },
                {
                  "flags": "--yarn <yarn>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--yarn",
                  "description": "Config values in the format of 'name=value'"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription id"
                }
              ]
            },
            {
              "name": "add-script-action",
              "description": "Adds a HDInsight script action.",
              "fullName": "hdinsight config add-script-action",
              "usage": "[options] <configFilePath>",
              "filePath": "commands/arm/hdinsight/hdinsight.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--configFilePath <configFilePath>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--configFilePath",
                  "description": "Configuration file path"
                },
                {
                  "flags": "--nodeType <nodeType>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--nodeType",
                  "description": "Specifies the node on which this cmdlet applies the action. Supported node types: HeadNode | WorkerNode | ZookeeperNode"
                },
                {
                  "flags": "--uri <uri>",
                  "required": -7,
                  "optional": 0,
                  "bool": true,
                  "long": "--uri",
                  "description": "Specifies the URI for the action"
                },
                {
                  "flags": "--name <name>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--name",
                  "description": "Specifies the name of the action"
                },
                {
                  "flags": "--parameters <parameters>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--parameters",
                  "description": "Specifies the parameters for the action"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription id"
                }
              ]
            }
          ],
          "categories": {}
        }
      }
    },
    "insights": {
      "name": "insights",
      "description": "Commands related to monitoring Insights (events, alert rules, autoscale settings, metrics)",
      "fullName": "insights",
      "usage": "[options]",
      "options": [],
      "commands": [],
      "categories": {
        "alerts": {
          "name": "alerts",
          "description": "Manages alert rules",
          "fullName": "insights alerts",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List alert logs for a resource.",
              "fullName": "insights alerts list",
              "usage": "[options] <resourceId>",
              "filePath": "commands/arm/insights/insights.alerts.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-i --resourceId <resourceId>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--resourceId",
                  "description": "The resource Id."
                },
                {
                  "flags": "-b --startTime <startTime>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--startTime",
                  "description": "The start time of the query. In ISO format with explicit indication of timezone: 1970-01-01T00:00:00Z, 1970-01-01T00:00:00-0500"
                },
                {
                  "flags": "-e --endTime <endTime>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--endTime",
                  "description": "The end time of the query. In ISO format with explicit indication of timezone: 1970-01-01T00:00:00Z, 1970-01-01T00:00:00-0500"
                },
                {
                  "flags": "--status <status>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--status",
                  "description": "The status."
                },
                {
                  "flags": "--caller <caller>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--caller",
                  "description": "Caller to look for when querying."
                },
                {
                  "flags": "-d --detailedOutput",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--detailedOutput",
                  "description": "Shows the details of the events in the log."
                },
                {
                  "flags": "-s --subscription <subscription>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier."
                }
              ]
            }
          ],
          "categories": {
            "actions": {
              "name": "actions",
              "description": "Creates alert rules actions",
              "fullName": "insights alerts actions",
              "usage": "[options]",
              "options": [],
              "commands": [],
              "categories": {
                "email": {
                  "name": "email",
                  "description": "Creates alert rule e-mail actions",
                  "fullName": "insights alerts actions email",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "create",
                      "description": "Creates an alert rule e-mail action.",
                      "fullName": "insights alerts actions email create",
                      "usage": "[options]",
                      "filePath": "commands/arm/insights/insights.alerts.actions.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-e --customEmails <customEmails>",
                          "required": -19,
                          "optional": 0,
                          "bool": true,
                          "short": "-e",
                          "long": "--customEmails",
                          "description": "A string with the list of custom e-mails in comma-separated format."
                        },
                        {
                          "flags": "-o --sendToServiceOwners",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-o",
                          "long": "--sendToServiceOwners",
                          "description": "Flag to send em-mail to the service owners when the alert fires."
                        }
                      ]
                    }
                  ],
                  "categories": {}
                },
                "webhook": {
                  "name": "webhook",
                  "description": "Creates alert rule webhook actions",
                  "fullName": "insights alerts actions webhook",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "create",
                      "description": "Creates an alert rule webhook action.",
                      "fullName": "insights alerts actions webhook create",
                      "usage": "[options] <serviceUri>",
                      "filePath": "commands/arm/insights/insights.alerts.actions.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-e --serviceUri <serviceUri>",
                          "required": -17,
                          "optional": 0,
                          "bool": true,
                          "short": "-e",
                          "long": "--serviceUri",
                          "description": "The service Uri."
                        },
                        {
                          "flags": "-o --properties <properties>",
                          "required": -17,
                          "optional": 0,
                          "bool": true,
                          "short": "-o",
                          "long": "--properties",
                          "description": "A string with the list of key / value pairs in comma-separated format. Example: \"key1=value1;key2=value2\"."
                        }
                      ]
                    }
                  ],
                  "categories": {}
                }
              }
            },
            "rule": {
              "name": "rule",
              "description": "Manages alert rules",
              "fullName": "insights alerts rule",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "List alert rules for a resource.",
                  "fullName": "insights alerts rule list",
                  "usage": "[options] <resourceGroup>",
                  "filePath": "commands/arm/insights/insights.alerts.rule.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g --resourceGroup <resourceGroup>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resourceGroup",
                      "description": "The resource group."
                    },
                    {
                      "flags": "-n --ruleName <ruleName>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--ruleName",
                      "description": "The name of the rule to query."
                    },
                    {
                      "flags": "-i --targetResourceId <targetResourceId>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--targetResourceId",
                      "description": "The target resource of the query."
                    },
                    {
                      "flags": "-s --subscription <subscription>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "The subscription identifier."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Deletes an alert rule.",
                  "fullName": "insights alerts rule delete",
                  "usage": "[options] <resourceGroup> <ruleName>",
                  "filePath": "commands/arm/insights/insights.alerts.rule.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g --resourceGroup <resourceGroup>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resourceGroup",
                      "description": "The resource group."
                    },
                    {
                      "flags": "-n --ruleName <ruleName>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--ruleName",
                      "description": "The name of the rule to query."
                    },
                    {
                      "flags": "-s --subscription <subscription>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "The subscription identifier."
                    }
                  ]
                }
              ],
              "categories": {
                "log": {
                  "name": "log",
                  "description": "Creates event-based alerts rules",
                  "fullName": "insights alerts rule log",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "set",
                      "description": "Create or set an event-based alert rule.",
                      "fullName": "insights alerts rule log set",
                      "usage": "[options] <ruleName> <location> <resourceGroup> <operationName>",
                      "filePath": "commands/arm/insights/insights.alerts.rule.log.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-x --disable",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-x",
                          "long": "--disable",
                          "description": "Flag to disable the rule."
                        },
                        {
                          "flags": "-s --subscription <subscription>",
                          "required": -19,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "The subscription identifier."
                        },
                        {
                          "flags": "-n --ruleName <ruleName>",
                          "required": -15,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--ruleName",
                          "description": "The name of the rule."
                        },
                        {
                          "flags": "-d --description <description>",
                          "required": -18,
                          "optional": 0,
                          "bool": true,
                          "short": "-d",
                          "long": "--description",
                          "description": "The description of the rule."
                        },
                        {
                          "flags": "-l --location <location>",
                          "required": -15,
                          "optional": 0,
                          "bool": true,
                          "short": "-l",
                          "long": "--location",
                          "description": "The location."
                        },
                        {
                          "flags": "-g --resourceGroup <resourceGroup>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-g",
                          "long": "--resourceGroup",
                          "description": "The resource group."
                        },
                        {
                          "flags": "-p --operationName <operationName>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-p",
                          "long": "--operationName",
                          "description": "The operation name."
                        },
                        {
                          "flags": "-z --actions <actions>",
                          "required": -14,
                          "optional": 0,
                          "bool": true,
                          "short": "-z",
                          "long": "--actions",
                          "description": "The list of alert rule actions. The list must be a json object (string) of an array. Example: \"[{\\\"customEmails\\\":[\\\"gu@ms.com\\\"]},{\\\"serviceUri\\\":\\\"http://foo.com\\\",\\\"properties\\\":[{\\\"key\\\":\\\"key1\\\",\\\"value\\\":\\\"value1\\\"},{\\\"key\\\":\\\"value1\\\",\\\"value\\\":\\\"key2\\\"}]}]\""
                        },
                        {
                          "flags": "-i --targetResourceId <targetResourceId>",
                          "required": -23,
                          "optional": 0,
                          "bool": true,
                          "short": "-i",
                          "long": "--targetResourceId",
                          "description": "The target resource Id."
                        },
                        {
                          "flags": "-k --targetResourceProvider <targetResourceProvider>",
                          "required": -29,
                          "optional": 0,
                          "bool": true,
                          "short": "-k",
                          "long": "--targetResourceProvider",
                          "description": "The target resource provider."
                        },
                        {
                          "flags": "-z --targetResourceGroup <targetResourceGroup>",
                          "required": -26,
                          "optional": 0,
                          "bool": true,
                          "short": "-z",
                          "long": "--targetResourceGroup",
                          "description": "The target resource group."
                        },
                        {
                          "flags": "-f --level <level>",
                          "required": -12,
                          "optional": 0,
                          "bool": true,
                          "short": "-f",
                          "long": "--level",
                          "description": "The level for the rule."
                        },
                        {
                          "flags": "-u --status <status>",
                          "required": -13,
                          "optional": 0,
                          "bool": true,
                          "short": "-u",
                          "long": "--status",
                          "description": "The status."
                        },
                        {
                          "flags": "-b --subStatus <subStatus>",
                          "required": -16,
                          "optional": 0,
                          "bool": true,
                          "short": "-b",
                          "long": "--subStatus",
                          "description": "The substatus."
                        }
                      ]
                    }
                  ],
                  "categories": {}
                },
                "metric": {
                  "name": "metric",
                  "description": "Creates metric-based alerts rules",
                  "fullName": "insights alerts rule metric",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "set",
                      "description": "Create or set a metric alert rule.",
                      "fullName": "insights alerts rule metric set",
                      "usage": "[options] <ruleName> <location> <resourceGroup> <windowSize> <operator> <threshold> <targetResourceId> <metricName> <timeAggregationOperator>",
                      "filePath": "commands/arm/insights/insights.alerts.rule.metric.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-x --disable",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-x",
                          "long": "--disable",
                          "description": "Flag to disable the rule."
                        },
                        {
                          "flags": "-s --subscription <subscription>",
                          "required": -19,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "The subscription identifier."
                        },
                        {
                          "flags": "-n --ruleName <ruleName>",
                          "required": -15,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--ruleName",
                          "description": "The name of the rule."
                        },
                        {
                          "flags": "-d --description <description>",
                          "required": -18,
                          "optional": 0,
                          "bool": true,
                          "short": "-d",
                          "long": "--description",
                          "description": "The description of the rule."
                        },
                        {
                          "flags": "-l --location <location>",
                          "required": -15,
                          "optional": 0,
                          "bool": true,
                          "short": "-l",
                          "long": "--location",
                          "description": "The location."
                        },
                        {
                          "flags": "-g --resourceGroup <resourceGroup>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-g",
                          "long": "--resourceGroup",
                          "description": "The resource group."
                        },
                        {
                          "flags": "--windowSize <windowSize>",
                          "required": -14,
                          "optional": 0,
                          "bool": true,
                          "long": "--windowSize",
                          "description": "The time window size. Expected format hh:mm:ss."
                        },
                        {
                          "flags": "-o --operator <operator>",
                          "required": -15,
                          "optional": 0,
                          "bool": true,
                          "short": "-o",
                          "long": "--operator",
                          "description": "The condition operator: GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual. Value is case insensitive."
                        },
                        {
                          "flags": "-a --threshold <threshold>",
                          "required": -16,
                          "optional": 0,
                          "bool": true,
                          "short": "-a",
                          "long": "--threshold",
                          "description": "The threshold."
                        },
                        {
                          "flags": "-i --targetResourceId <targetResourceId>",
                          "required": -23,
                          "optional": 0,
                          "bool": true,
                          "short": "-i",
                          "long": "--targetResourceId",
                          "description": "The target resource Id."
                        },
                        {
                          "flags": "-m --metricName <metricName>",
                          "required": -17,
                          "optional": 0,
                          "bool": true,
                          "short": "-m",
                          "long": "--metricName",
                          "description": "The metric name."
                        },
                        {
                          "flags": "--timeAggregationOperator <timeAggregationOperator>",
                          "required": -27,
                          "optional": 0,
                          "bool": true,
                          "long": "--timeAggregationOperator",
                          "description": "The time aggregation operator: Average, Minimum, Maximum, Total. Value is case insensitve."
                        },
                        {
                          "flags": "-z --actions <actions>",
                          "required": -14,
                          "optional": 0,
                          "bool": true,
                          "short": "-z",
                          "long": "--actions",
                          "description": "The list of alert rule actions. The list must be a json object (string) of an array. Example: \"[{\\\"customEmails\\\":[\\\"gu@ms.com\\\"]},{\\\"serviceUri\\\":\\\"http://foo.com\\\",\\\"properties\\\":[{\\\"key\\\":\\\"key1\\\",\\\"value\\\":\\\"value1\\\"},{\\\"key\\\":\\\"value1\\\",\\\"value\\\":\\\"key2\\\"}]}]\""
                        }
                      ]
                    }
                  ],
                  "categories": {}
                },
                "webtest": {
                  "name": "webtest",
                  "description": "Creates webtest alerts rules",
                  "fullName": "insights alerts rule webtest",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "set",
                      "description": "Create a webtest alert rule.",
                      "fullName": "insights alerts rule webtest set",
                      "usage": "[options] <ruleName> <location> <resourceGroup> <windowSize> <failedLocationCount> <metricName> <webtestResourceUri>",
                      "filePath": "commands/arm/insights/insights.alerts.rule.webtest.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-x --disable",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-x",
                          "long": "--disable",
                          "description": "Flag to disable the rule."
                        },
                        {
                          "flags": "-s --subscription <subscription>",
                          "required": -19,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "The subscription identifier."
                        },
                        {
                          "flags": "-n --ruleName <ruleName>",
                          "required": -15,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--ruleName",
                          "description": "The name of the rule."
                        },
                        {
                          "flags": "-d --description <description>",
                          "required": -18,
                          "optional": 0,
                          "bool": true,
                          "short": "-d",
                          "long": "--description",
                          "description": "The description of the rule."
                        },
                        {
                          "flags": "-l --location <location>",
                          "required": -15,
                          "optional": 0,
                          "bool": true,
                          "short": "-l",
                          "long": "--location",
                          "description": "The location."
                        },
                        {
                          "flags": "-g --resourceGroup <resourceGroup>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-g",
                          "long": "--resourceGroup",
                          "description": "The resource group."
                        },
                        {
                          "flags": "-m --metricName <metricName>",
                          "required": -17,
                          "optional": 0,
                          "bool": true,
                          "short": "-m",
                          "long": "--metricName",
                          "description": "The metric name."
                        },
                        {
                          "flags": "--windowSize <windowSize>",
                          "required": -14,
                          "optional": 0,
                          "bool": true,
                          "long": "--windowSize",
                          "description": "The time window size. Expected format hh:mm:ss."
                        },
                        {
                          "flags": "-f --failedLocationCount <failedLocationCount>",
                          "required": -26,
                          "optional": 0,
                          "bool": true,
                          "short": "-f",
                          "long": "--failedLocationCount",
                          "description": "The failed location."
                        },
                        {
                          "flags": "-i --webtestResourceUri <webtestResourceUri>",
                          "required": -25,
                          "optional": 0,
                          "bool": true,
                          "short": "-i",
                          "long": "--webtestResourceUri",
                          "description": "The webtest resource Id."
                        },
                        {
                          "flags": "-y --metricNamespace <metricNamespace>",
                          "required": -22,
                          "optional": 0,
                          "bool": true,
                          "short": "-y",
                          "long": "--metricNamespace",
                          "description": "The metric namespace."
                        },
                        {
                          "flags": "-z --actions <actions>",
                          "required": -14,
                          "optional": 0,
                          "bool": true,
                          "short": "-z",
                          "long": "--actions",
                          "description": "The list of alert rule actions. The list must be a json object (string) of an array. Example: \"[{\\\"customEmails\\\":[\\\"gu@ms.com\\\"]},{\\\"serviceUri\\\":\\\"http://foo.com\\\",\\\"properties\\\":[{\\\"key\\\":\\\"key1\\\",\\\"value\\\":\\\"value1\\\"},{\\\"key\\\":\\\"value1\\\",\\\"value\\\":\\\"key2\\\"}]}]\""
                        }
                      ]
                    }
                  ],
                  "categories": {}
                }
              }
            }
          }
        },
        "autoscale": {
          "name": "autoscale",
          "description": "Retrieve autoscale logs",
          "fullName": "insights autoscale",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List autoscale logs for a resource.",
              "fullName": "insights autoscale list",
              "usage": "[options]",
              "filePath": "commands/arm/insights/insights.autoscale.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-i --resourceId <resourceId>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--resourceId",
                  "description": "The resource Id."
                },
                {
                  "flags": "-b --startTime <startTime>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--startTime",
                  "description": "The start time of the query. In ISO format with explicit indication of timezone: 1970-01-01T00:00:00Z, 1970-01-01T00:00:00-0500"
                },
                {
                  "flags": "-e --endTime <endTime>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--endTime",
                  "description": "The end time of the query. In ISO format with explicit indication of timezone: 1970-01-01T00:00:00Z, 1970-01-01T00:00:00-0500"
                },
                {
                  "flags": "--status <status>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--status",
                  "description": "The status."
                },
                {
                  "flags": "--caller <caller>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--caller",
                  "description": "Caller to look for when querying."
                },
                {
                  "flags": "-d --detailedOutput",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--detailedOutput",
                  "description": "Shows the details of the events in the log."
                },
                {
                  "flags": "-s --subscription <subscription>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier."
                }
              ]
            }
          ],
          "categories": {
            "notifications": {
              "name": "notifications",
              "description": "Creates autoscale notifications",
              "fullName": "insights autoscale notifications",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Creates an autoscale notification.",
                  "fullName": "insights autoscale notifications create",
                  "usage": "[options]",
                  "filePath": "commands/arm/insights/insights.autoscale.notifications.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-e --customEmails <customEmails>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--customEmails",
                      "description": "A string with the list of custom e-mails in comma-separated format."
                    },
                    {
                      "flags": "-o --sendEmailToSubscriptionAdministrator",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--sendEmailToSubscriptionAdministrator",
                      "description": "Flag to send em-mail to the subscription administrator when the rule fires."
                    },
                    {
                      "flags": "-p --sendEmailToSubscriptionCoAdministrators",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--sendEmailToSubscriptionCoAdministrators",
                      "description": "Flag to send em-mail to the subscription coadministrators when the alert fires."
                    },
                    {
                      "flags": "-w --webhooks <webhooks>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--webhooks",
                      "description": "List of webhooks in the escaped json format"
                    }
                  ]
                }
              ],
              "categories": {
                "webhook": {
                  "name": "webhook",
                  "description": "Creates autoscale webhook notifications",
                  "fullName": "insights autoscale notifications webhook",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "create",
                      "description": "Creates an autoscale webhook notification.",
                      "fullName": "insights autoscale notifications webhook create",
                      "usage": "[options] <serviceUri>",
                      "filePath": "commands/arm/insights/insights.autoscale.notifications.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-e --serviceUri <serviceUri>",
                          "required": -17,
                          "optional": 0,
                          "bool": true,
                          "short": "-e",
                          "long": "--serviceUri",
                          "description": "The service Uri."
                        },
                        {
                          "flags": "-o --properties <properties>",
                          "required": -17,
                          "optional": 0,
                          "bool": true,
                          "short": "-o",
                          "long": "--properties",
                          "description": "A string with the list of key / value pairs in comma-separated format. Example: \"key1=value1;key2=value2\"."
                        }
                      ]
                    }
                  ],
                  "categories": {}
                }
              }
            },
            "profile": {
              "name": "profile",
              "description": "Manages autoscale profiles",
              "fullName": "insights autoscale profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create or set an autoscale profile.",
                  "fullName": "insights autoscale profile create",
                  "usage": "[options] <profileType> <profileName> <defaultCapacity> <maximumCapacity> <minimumCapacity> <rules>",
                  "filePath": "commands/arm/insights/insights.autoscale.profile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-y --profileType <profileType>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-y",
                      "long": "--profileType",
                      "description": "The type of the profile: NoSchedule, FixedDate, Recurrent (the value case insensitive)"
                    },
                    {
                      "flags": "-n --profileName <profileName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--profileName",
                      "description": "The name of the profile."
                    },
                    {
                      "flags": "-d --defaultCapacity <defaultCapacity>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--defaultCapacity",
                      "description": "The default capacity of the profile."
                    },
                    {
                      "flags": "-a --maximumCapacity <maximumCapacity>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--maximumCapacity",
                      "description": "The maximum capacity of the profile."
                    },
                    {
                      "flags": "-m --minimumCapacity <minimumCapacity>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-m",
                      "long": "--minimumCapacity",
                      "description": "The minimum capacity of the profile."
                    },
                    {
                      "flags": "-l --rules <rules>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--rules",
                      "description": "The rules of the profile. A json string containing a listing of scale rules."
                    },
                    {
                      "flags": "-b --startTimeWindow <startTimeWindow>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-b",
                      "long": "--startTimeWindow",
                      "description": "The start time window of a fixed date schedule."
                    },
                    {
                      "flags": "-e --endTimeWindow <endTimeWindow>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--endTimeWindow",
                      "description": "The end time window of a fixed date schedule."
                    },
                    {
                      "flags": "-z --timeWindowTimeZone <timeWindowTimeZone>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-z",
                      "long": "--timeWindowTimeZone",
                      "description": "The time window timezone of a fixed date schedule."
                    },
                    {
                      "flags": "-f --recurrenceFrequency <recurrenceFrequency>",
                      "required": -26,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--recurrenceFrequency",
                      "description": "The recurrence frequency of a recurrent schedule: None, Second, Minute, Hour, Day, Week, Month, Year (the value is case insensitive)"
                    },
                    {
                      "flags": "-g --scheduleDays <scheduleDays>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--scheduleDays",
                      "description": "The list of schedule days a recurrent schedule. Values are comma-separated."
                    },
                    {
                      "flags": "-o --scheduleHours <scheduleHours>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--scheduleHours",
                      "description": "The list of schedule hours a recurrent schedule. Values are comma-separated."
                    },
                    {
                      "flags": "-u --scheduleMinutes <scheduleMinutes>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--scheduleMinutes",
                      "description": "The list of schedule minutes a recurrent schedule. Values are comma-separated."
                    },
                    {
                      "flags": "-x --scheduleTimeZone <scheduleTimeZone>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "short": "-x",
                      "long": "--scheduleTimeZone",
                      "description": "The list of schedule timezone a recurrent schedule."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "rule": {
              "name": "rule",
              "description": "Manages autoscale rules",
              "fullName": "insights autoscale rule",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create or set an autoscale rule.",
                  "fullName": "insights autoscale rule create",
                  "usage": "[options] <metricName> <metricResourceId> <conditionOperatorType> <metricStatisticType> <threshold> <timeGrain> <actionCooldown> <actionDirection> <actionType> <scaleValue>",
                  "filePath": "commands/arm/insights/insights.autoscale.rule.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-m --metricName <metricName>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-m",
                      "long": "--metricName",
                      "description": "The metric name."
                    },
                    {
                      "flags": "-i --metricResourceId <metricResourceId>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--metricResourceId",
                      "description": "The resource Id."
                    },
                    {
                      "flags": "-o --conditionOperatorType <conditionOperatorType>",
                      "required": -28,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--conditionOperatorType",
                      "description": "The condition operator: Equals, NotEquals, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual. The value is case insensitive."
                    },
                    {
                      "flags": "-r --metricStatisticType <metricStatisticType>",
                      "required": -26,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--metricStatisticType",
                      "description": "The metric statistic type: Average, Min, Max, Sum. The value is case insensitive."
                    },
                    {
                      "flags": "-t --threshold <threshold>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--threshold",
                      "description": "The threshold."
                    },
                    {
                      "flags": "-n --timeGrain <timeGrain>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--timeGrain",
                      "description": "The time grain. Expected format hh:mm:ss."
                    },
                    {
                      "flags": "-c --actionCooldown <actionCooldown>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--actionCooldown",
                      "description": "The scale action cooldown time. Expected format hh:mm:ss."
                    },
                    {
                      "flags": "-d --actionDirection <actionDirection>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--actionDirection",
                      "description": "The scale action direction: None, Increase, Decrease. The value is case insensitive."
                    },
                    {
                      "flags": "-y --actionType <actionType>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-y",
                      "long": "--actionType",
                      "description": "The scale action type name: ChangeSize, ChangeCount, PercentChangeCount, ExactCount. The value is case insensitive."
                    },
                    {
                      "flags": "-l --scaleValue <scaleValue>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--scaleValue",
                      "description": "The scale action value."
                    },
                    {
                      "flags": "-a --timeAggregationOperator <timeAggregationOperator>",
                      "required": -30,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--timeAggregationOperator",
                      "description": "The time aggregation operator: Average, Minimum, Maximum, Total. The value is case insensitive."
                    },
                    {
                      "flags": "-w --windowSize <windowSize>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--windowSize",
                      "description": "The time window size. Expected format hh:mm:ss."
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "setting": {
              "name": "setting",
              "description": "Manages autoscale settings",
              "fullName": "insights autoscale setting",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "List autoscale settings for a resource.",
                  "fullName": "insights autoscale setting list",
                  "usage": "[options] <resourceGroup>",
                  "filePath": "commands/arm/insights/insights.autoscale.setting.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g --resourceGroup <resourceGroup>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resourceGroup",
                      "description": "The resource group."
                    },
                    {
                      "flags": "-n --settingName <settingName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--settingName",
                      "description": "The name of the setting."
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Deletes an autoscale setting.",
                  "fullName": "insights autoscale setting delete",
                  "usage": "[options] <resourceGroup> <settingName>",
                  "filePath": "commands/arm/insights/insights.autoscale.setting.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g --resourceGroup <resourceGroup>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resourceGroup",
                      "description": "The resource group."
                    },
                    {
                      "flags": "-n --settingName <settingName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--settingName",
                      "description": "The name of the setting."
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Create or set an autoscale setting.",
                  "fullName": "insights autoscale setting set",
                  "usage": "[options] <settingName> <location> <resourceGroup>",
                  "filePath": "commands/arm/insights/insights.autoscale.setting.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-x --disable",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-x",
                      "long": "--disable",
                      "description": "Flag to disable the setting."
                    },
                    {
                      "flags": "-a --autoProfiles <autoProfiles>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--autoProfiles",
                      "description": "A list of autoscale profiles in JSON format."
                    },
                    {
                      "flags": "-g --resourceGroup <resourceGroup>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resourceGroup",
                      "description": "The resource group."
                    },
                    {
                      "flags": "-n --settingName <settingName>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--settingName",
                      "description": "The name of the setting."
                    },
                    {
                      "flags": "-l --location <location>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--location",
                      "description": "The location."
                    },
                    {
                      "flags": "-i --targetResourceId <targetResourceId>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--targetResourceId",
                      "description": "The resource Id."
                    },
                    {
                      "flags": "-p --settingSpec <settingSpec>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--settingSpec",
                      "description": "The setting spec in JSON format."
                    },
                    {
                      "flags": "-w --notifications <notifications>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--notifications",
                      "description": "The list object autoscale notifications in escaped-jsson format."
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "diagnostic": {
          "name": "diagnostic",
          "description": "Configure diagnostics for resources",
          "fullName": "insights diagnostic",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "get",
              "description": "Get the diagnostics for the resource.",
              "fullName": "insights diagnostic get",
              "usage": "[options]",
              "filePath": "commands/arm/insights/insights.diagnostic.get.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-i, --resourceId <resourceId>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--resourceId",
                  "description": "resource Id."
                }
              ]
            },
            {
              "name": "set",
              "description": "Set the diagnostics for the resource.",
              "fullName": "insights diagnostic set",
              "usage": "[options]",
              "filePath": "commands/arm/insights/insights.diagnostic.set.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-i, --resourceId <resourceId>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--resourceId",
                  "description": "resource Id."
                },
                {
                  "flags": "-a, --storageId <storageId>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--storageId",
                  "description": "storage account Id."
                },
                {
                  "flags": "-b, --serviceBusRuleId <serviceBusRuleId>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--serviceBusRuleId",
                  "description": "service bus authorization rule Id."
                },
                {
                  "flags": "-e, --enabled <enabled>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--enabled",
                  "description": "whether the configuration is enabled or disabled."
                },
                {
                  "flags": "-c, --categories <categories>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--categories",
                  "description": "comma separated list of categories to be affected. Valid values vary per resource type."
                },
                {
                  "flags": "-t, --timegrains <timegrains>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--timegrains",
                  "description": "comma separated list of timegrains to be affected in ISO 8601 format. Example: 'PT1M' for 1 minute."
                }
              ]
            }
          ],
          "categories": {}
        },
        "logs": {
          "name": "logs",
          "description": "Retrieve operation logs for a subscription, a correlationId, a resource group, resource, or resource provider.",
          "fullName": "insights logs",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List operation logs for a subscription.",
              "fullName": "insights logs list",
              "usage": "[options]",
              "filePath": "commands/arm/insights/insights.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-c --correlationId <correlationId>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--correlationId",
                  "description": "The correlation id of the query."
                },
                {
                  "flags": "-g --resourceGroup <resourceGroup>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resourceGroup",
                  "description": "The resource group."
                },
                {
                  "flags": "-i --resourceId <resourceId>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--resourceId",
                  "description": "The resource Id."
                },
                {
                  "flags": "-p --resourceProvider <resourceProvider>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--resourceProvider",
                  "description": "The resource provider."
                },
                {
                  "flags": "-b --startTime <startTime>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--startTime",
                  "description": "The start time of the query. In ISO format with explicit indication of timezone: 1970-01-01T00:00:00Z, 1970-01-01T00:00:00-0500"
                },
                {
                  "flags": "-e --endTime <endTime>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--endTime",
                  "description": "The end time of the query. In ISO format with explicit indication of timezone: 1970-01-01T00:00:00Z, 1970-01-01T00:00:00-0500"
                },
                {
                  "flags": "-m --maxEvents <maxEvents>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--maxEvents",
                  "description": "The maximum number of records to be returned by the command."
                },
                {
                  "flags": "--status <status>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--status",
                  "description": "The status."
                },
                {
                  "flags": "--caller <caller>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--caller",
                  "description": "Caller to look for when querying."
                },
                {
                  "flags": "-d --detailedOutput",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--detailedOutput",
                  "description": "Shows the details of the events in the log."
                },
                {
                  "flags": "-s --subscription <subscription>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier."
                }
              ]
            }
          ],
          "categories": {}
        },
        "logprofile": {
          "name": "logprofile",
          "description": "Configure log profiles",
          "fullName": "insights logprofile",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "add",
              "description": "Add a new log profile.",
              "fullName": "insights logprofile add",
              "usage": "[options]",
              "filePath": "commands/arm/insights/insights.logprofiles.add.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "resource Id."
                },
                {
                  "flags": "-a, --storageId <storageId>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--storageId",
                  "description": "storage account Id."
                },
                {
                  "flags": "-b, --serviceBusRuleId <servicesBusRuleId>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--serviceBusRuleId",
                  "description": "the authorization rule id of the service bus."
                },
                {
                  "flags": "-c, --categories <categories>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--categories",
                  "description": "comma separated list of categories to be included in the captured logs."
                },
                {
                  "flags": "-l, --locations <locations>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--locations",
                  "description": "comma separated list of locations of the resources to be included in the log profile."
                },
                {
                  "flags": "-t, --retentionInDays <retentionInDays>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--retentionInDays",
                  "description": "the number of days the logs will be kept before being delete."
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete the log profile.",
              "fullName": "insights logprofile delete",
              "usage": "[options]",
              "filePath": "commands/arm/insights/insights.logprofiles.delete.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "name of the log profile."
                }
              ]
            },
            {
              "name": "get",
              "description": "Get the log profile.",
              "fullName": "insights logprofile get",
              "usage": "[options]",
              "filePath": "commands/arm/insights/insights.logprofiles.get.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "name of the log profile."
                }
              ]
            },
            {
              "name": "list",
              "description": "List log profiles.",
              "fullName": "insights logprofile list",
              "usage": "[options]",
              "filePath": "commands/arm/insights/insights.logprofiles.list.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                }
              ]
            }
          ],
          "categories": {}
        },
        "metrics": {
          "name": "metrics",
          "description": "Retrieve metrics values resource",
          "fullName": "insights metrics",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List metric values for a resource.",
              "fullName": "insights metrics list",
              "usage": "[options] <resourceId> <timeGrain>",
              "filePath": "commands/arm/insights/insights.metrics.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-i --resourceId <resourceId>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--resourceId",
                  "description": "The resource Id."
                },
                {
                  "flags": "-t --timeGrain <timeGrain>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--timeGrain",
                  "description": "The time grain. Expected format hh:mm:ss."
                },
                {
                  "flags": "-b --startTime <startTime>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--startTime",
                  "description": "The start time of the query. In ISO format with explicit indication of timezone: 1970-01-01T00:00:00Z, 1970-01-01T00:00:00-0500"
                },
                {
                  "flags": "-e --endTime <endTime>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--endTime",
                  "description": "The end time of the query. In ISO format with explicit indication of timezone: 1970-01-01T00:00:00Z, 1970-01-01T00:00:00-0500"
                },
                {
                  "flags": "-n --metricNames <metricNames>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--metricNames",
                  "description": "The list of metric names."
                },
                {
                  "flags": "-s --subscription <subscription>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier."
                }
              ]
            }
          ],
          "categories": {
            "definition": {
              "name": "definition",
              "description": "Retrieves metric definitions for a resource",
              "fullName": "insights metrics definition",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "List metric definitions for a resource.",
                  "fullName": "insights metrics definition list",
                  "usage": "[options] <resourceId>",
                  "filePath": "commands/arm/insights/insights.metrics.definition.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-i --resourceId <resourceId>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--resourceId",
                      "description": "The resource Id."
                    },
                    {
                      "flags": "-n --metricNames <metricNames>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--metricNames",
                      "description": "The list of metric names."
                    },
                    {
                      "flags": "-s --subscription <subscription>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "The subscription identifier."
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "usage": {
          "name": "usage",
          "description": "Retrieve usage metrics for a resource.",
          "fullName": "insights usage",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List usage metrics for a resource.",
              "fullName": "insights usage list",
              "usage": "[options] <resourceId>",
              "filePath": "commands/arm/insights/insights.usage.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-p --ApiVersion <apiVersion>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--ApiVersion",
                  "description": "The underlying resource provider API version."
                },
                {
                  "flags": "-n --metricNames <metricNames>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--metricNames",
                  "description": "The list of metric names."
                },
                {
                  "flags": "-b --startTime <startTime>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--startTime",
                  "description": "The start time of the query. In ISO format with explicit indication of timezone: 1970-01-01T00:00:00Z, 1970-01-01T00:00:00-0500"
                },
                {
                  "flags": "-e --endTime <endTime>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--endTime",
                  "description": "The end time of the query. In ISO format with explicit indication of timezone: 1970-01-01T00:00:00Z, 1970-01-01T00:00:00-0500"
                },
                {
                  "flags": "-s --subscription <subscription>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier."
                }
              ]
            }
          ],
          "categories": {}
        }
      }
    },
    "iothub": {
      "name": "iothub",
      "description": "Commands to manage your Azure IoT hubs",
      "fullName": "iothub",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "create",
          "description": "Create a new IoT hub",
          "fullName": "iothub create",
          "usage": "<resource-group> <name> <location> <sku-name> <units> [options]",
          "filePath": "commands/arm/iothub/iothub.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group <resourceGroup>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "The name of the resource group."
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "The name of the new IoT hub."
            },
            {
              "flags": "-l --location <location>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-l",
              "long": "--location",
              "description": "The location (azure region/datacenter) where the IoT hub will be provisioned."
            },
            {
              "flags": "-k --sku-name <skuName>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-k",
              "long": "--sku-name",
              "description": "The name of the sku, one of: [F1, S1, S2, S3] etc. For the latest full list refer to the pricing page for IoT Hub."
            },
            {
              "flags": "-u --units <units>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-u",
              "long": "--units",
              "description": "The number of provisioned units. Range : F1 [1-1] : S1, S2 [1-200] : S3 [1-10]."
            },
            {
              "flags": "-e --enable-dm [enableDm]",
              "required": 0,
              "optional": -16,
              "bool": true,
              "short": "-e",
              "long": "--enable-dm",
              "description": "The flag which indicates whether the Device Management feature is enabled for this IoT hub. One of true, false. Default : false"
            },
            {
              "flags": "-p --d2c-partitions [d2cPartitions]",
              "required": 0,
              "optional": -21,
              "bool": true,
              "short": "-p",
              "long": "--d2c-partitions",
              "description": "The number of partitions for your device-to-cloud events. Range : F1 [2-2] Rest of the Skus [2-128]. Default : 2"
            },
            {
              "flags": "-r --d2c-retention-time-in-days [d2cRetentionTimeInDays]",
              "required": 0,
              "optional": -33,
              "bool": true,
              "short": "-r",
              "long": "--d2c-retention-time-in-days",
              "description": "The number of days for which the device-to-cloud events will be maintained. Range : [1-7]. Default : 1."
            },
            {
              "flags": "-d --c2d-max-delivery-count [c2dMaxDeliveryCount]",
              "required": 0,
              "optional": -29,
              "bool": true,
              "short": "-d",
              "long": "--c2d-max-delivery-count",
              "description": "The number of times the IoT hub will attempt to deliver a cloud-to-device message to a device. Range : [1-100]. Default : 10."
            },
            {
              "flags": "-c --c2d-ttl [c2dTtl]",
              "required": 0,
              "optional": -14,
              "bool": true,
              "short": "-c",
              "long": "--c2d-ttl",
              "description": "The amount of time for which a cloud to device mesage is available for the device to consume before it is expired by IoT hub. Range : [1-48 hours]. Default : 1 hour."
            },
            {
              "flags": "-f --feedback-lock-duration [feedbackLockDuration]",
              "required": 0,
              "optional": -29,
              "bool": true,
              "short": "-f",
              "long": "--feedback-lock-duration",
              "description": "The lock duration for the feedback messages. Range : [5 seconds - 5 minutes]. Default : 1 minute."
            },
            {
              "flags": "-F --feedback-ttl [feedbackTtl]",
              "required": 0,
              "optional": -19,
              "bool": true,
              "short": "-F",
              "long": "--feedback-ttl",
              "description": "The amount of time a feedback mesage is available for the device to consume before it is expired by IotHub. Range : [1-48 hours]. Default : 1 hour."
            },
            {
              "flags": "-m --feedback-max-delivery-count [feedbackMaxDeliveryCount]",
              "required": 0,
              "optional": -34,
              "bool": true,
              "short": "-m",
              "long": "--feedback-max-delivery-count",
              "description": "The number of times the IoT hub will attempt to deliver a cloud-device feedback message to a device. Range : [1-100]. Default : 1."
            },
            {
              "flags": "-x --enable-fileupload-notifications [enableFileuploadNotifications]",
              "required": 0,
              "optional": -38,
              "bool": true,
              "short": "-x",
              "long": "--enable-fileupload-notifications",
              "description": "The flag that specifies if the file upload notifications should be turned on, One of true, false. Default : false."
            },
            {
              "flags": "-S --fileupload-storage-connectionstring [fileuploadStorageConnectionstring]",
              "required": 0,
              "optional": -42,
              "bool": true,
              "short": "-S",
              "long": "--fileupload-storage-connectionstring",
              "description": "The storage connection string where the files are to be uploaded. Default : null."
            },
            {
              "flags": "-C --fileupload-container-name [fileuploadContainerName]",
              "required": 0,
              "optional": -32,
              "bool": true,
              "short": "-C",
              "long": "--fileupload-container-name",
              "description": "The storage container name where the files are to be uploaded. Default : null."
            },
            {
              "flags": "-T --fileupload-sas-uri-ttl [fileuploadSasUriTtl]",
              "required": 0,
              "optional": -29,
              "bool": true,
              "short": "-T",
              "long": "--fileupload-sas-uri-ttl",
              "description": "The amount of time for which the SAS Uri generated by IoT hub is valid before it expires. Range : [1-24 hours]. Default : 1 hour."
            },
            {
              "flags": "-N --fileupload-notification-ttl [fileuploadNotificationTtl]",
              "required": 0,
              "optional": -34,
              "bool": true,
              "short": "-N",
              "long": "--fileupload-notification-ttl",
              "description": "The amount of time for which a file upload notification is available for the service to consume before it is expired by IoT hub. Range : [1-48 hours]. Default : 1 hour."
            },
            {
              "flags": "-D --fileupload-notification-max-delivery-count [fileuploadNotificationMaxDeliveryCount]",
              "required": 0,
              "optional": -49,
              "bool": true,
              "short": "-D",
              "long": "--fileupload-notification-max-delivery-count",
              "description": "The number of times the IoT hub will attempt to deliver a file notification message. Range [1-100]. Default : 10."
            },
            {
              "flags": "-t --tags [tags]",
              "required": 0,
              "optional": -11,
              "bool": true,
              "short": "-t",
              "long": "--tags",
              "description": "The tags to set to the resource group. Can be multipleIn the format of 'name=value'. name is required and value is optionalFor example, -t 'tag1=value1;tag2'."
            },
            {
              "flags": "-s --subscription [subscription]",
              "required": 0,
              "optional": -19,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "list",
          "description": "Get all IoT hubs in a subcription or a resource group",
          "fullName": "iothub list",
          "usage": "<resource-group> [options]",
          "filePath": "commands/arm/iothub/iothub.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group [resourceGroup]",
              "required": 0,
              "optional": -21,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "The name of the resource group"
            },
            {
              "flags": "-s --subscription [subscription]",
              "required": 0,
              "optional": -19,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "show",
          "description": "Get an IoT hub",
          "fullName": "iothub show",
          "usage": "<resourceGroup> <name> [options]",
          "filePath": "commands/arm/iothub/iothub.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group <resourceGroup>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "The name of the resource group."
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "The name of the IoT hub."
            },
            {
              "flags": "-s --subscription [subscription]",
              "required": 0,
              "optional": -19,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier."
            }
          ]
        },
        {
          "name": "show-quota-metrics",
          "description": "Get the IoT hub Quota Metrics",
          "fullName": "iothub show-quota-metrics",
          "usage": "<resourceGroup> <name> [options]",
          "filePath": "commands/arm/iothub/iothub.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group <resourceGroup>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "The name of the resource group."
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "The name of the IoT hub."
            },
            {
              "flags": "-s --subscription [subscription]",
              "required": 0,
              "optional": -19,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier."
            }
          ]
        },
        {
          "name": "show-registry-stats",
          "description": "Get the IoT hub Registry Statistics",
          "fullName": "iothub show-registry-stats",
          "usage": "<resourceGroup> <name> [options]",
          "filePath": "commands/arm/iothub/iothub.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group <resourceGroup>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "The name of the resource group"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "The name of the IoT hub"
            },
            {
              "flags": "-s --subscription [subscription]",
              "required": 0,
              "optional": -19,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "delete",
          "description": "Delete an IoT hub",
          "fullName": "iothub delete",
          "usage": "<resourceGroup> <name> [options]",
          "filePath": "commands/arm/iothub/iothub.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group <resourceGroup>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "The name of the resource group"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "The name of the IoT hub to be deleted"
            },
            {
              "flags": "-s --subscription [subscription]",
              "required": 0,
              "optional": -19,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        }
      ],
      "categories": {
        "ipfilter-rules": {
          "name": "ipfilter-rules",
          "description": "Commands to manage the IP filter rules of an IoT hub",
          "fullName": "iothub ipfilter-rules",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List the IoT hub IP filter rules",
              "fullName": "iothub ipfilter-rules list",
              "usage": "<resourceGroup> <name> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                },
                {
                  "flags": "-f --output-file [output-file]",
                  "required": 0,
                  "optional": -18,
                  "bool": true,
                  "short": "-f",
                  "long": "--output-file",
                  "description": "the path to the JSON-formatted output IP filter rules file in the file system",
                  "fileRelatedOption": true
                }
              ]
            },
            {
              "name": "set",
              "description": "set the IoT hub IP filter rules",
              "fullName": "iothub ipfilter-rules set",
              "usage": "<resourceGroup> <name> <inputFile> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                },
                {
                  "flags": "-f --input-file <inputFile>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--input-file",
                  "description": "the path to the JSON-formatted input IP filter rules file in the file system",
                  "fileRelatedOption": true
                }
              ]
            }
          ],
          "categories": {}
        },
        "device-to-cloud-properties": {
          "name": "device-to-cloud-properties",
          "description": "Commands to manage the Device to Cloud Properties of an IoT hub",
          "fullName": "iothub device-to-cloud-properties",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "set",
              "description": "Set the Device to Cloud properties of an IoT hub",
              "fullName": "iothub device-to-cloud-properties set",
              "usage": "<resourceGroup> <name> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub"
                },
                {
                  "flags": "-r --d2c-retention-time-in-days [d2cRetentionTimeInDays]",
                  "required": 0,
                  "optional": -33,
                  "bool": true,
                  "short": "-r",
                  "long": "--d2c-retention-time-in-days",
                  "description": "The number of days for which the device-to-cloud events will be maintained, between 1 and 7"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "cloud-to-device-properties": {
          "name": "cloud-to-device-properties",
          "description": "Commands to manage the Cloud to Device Properties of an IoT hub",
          "fullName": "iothub cloud-to-device-properties",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "set",
              "description": "Set the Cloud to Device properties of an IoT hub",
              "fullName": "iothub cloud-to-device-properties set",
              "usage": "<resourceGroup> <name> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub"
                },
                {
                  "flags": "-d --c2d-max-delivery-count [c2dMaxDeliveryCount]",
                  "required": 0,
                  "optional": -29,
                  "bool": true,
                  "short": "-d",
                  "long": "--c2d-max-delivery-count",
                  "description": "The number of times the IoT hub will attempt to deliver a cloud-to-device message to a device, between 1 and 100"
                },
                {
                  "flags": "-c --c2d-ttl [c2dTtl]",
                  "required": 0,
                  "optional": -14,
                  "bool": true,
                  "short": "-c",
                  "long": "--c2d-ttl",
                  "description": "The amount of time for which a mesage is available for the device to consume before it is expired by IoT hub, between 1 and 48 hours"
                },
                {
                  "flags": "-f --feedback-lock-duration [feedbackLockDuration]",
                  "required": 0,
                  "optional": -29,
                  "bool": true,
                  "short": "-f",
                  "long": "--feedback-lock-duration",
                  "description": "The lock duration of the feedback messages, between 5 seconds and 5 minutes"
                },
                {
                  "flags": "-F --feedback-ttl [feedbackTtl]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-F",
                  "long": "--feedback-ttl",
                  "description": "The amount of time a feedback mesage is available for the device to consume before it is expired by IoT hub, between 1 and 48 hours"
                },
                {
                  "flags": "-m --feedback-max-delivery-count [feedbackMaxDeliveryCount]",
                  "required": 0,
                  "optional": -34,
                  "bool": true,
                  "short": "-m",
                  "long": "--feedback-max-delivery-count",
                  "description": "The number of times the IoT hub will attempt to deliver a cloud-device feedback message to a device, between 1 and 100"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "file-upload-properties": {
          "name": "file-upload-properties",
          "description": "Commands to manage the File Upload Properties of an IoT hub",
          "fullName": "iothub file-upload-properties",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "set",
              "description": "Set the File upload Properties of an IoT hub",
              "fullName": "iothub file-upload-properties set",
              "usage": "<resourceGroup> <name> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub"
                },
                {
                  "flags": "-x --enable-fileupload-notifications [enableFileuploadNotifications]",
                  "required": 0,
                  "optional": -38,
                  "bool": true,
                  "short": "-x",
                  "long": "--enable-fileupload-notifications",
                  "description": "The flag that specifies if the file upload notifications should be turned on, one of true, false"
                },
                {
                  "flags": "-S --fileupload-storage-connectionstring [fileuploadStorageConnectionstring]",
                  "required": 0,
                  "optional": -42,
                  "bool": true,
                  "short": "-S",
                  "long": "--fileupload-storage-connectionstring",
                  "description": "The storage connection string where the files are to be uploaded"
                },
                {
                  "flags": "-C --fileupload-container-name [fileuploadContainerName]",
                  "required": 0,
                  "optional": -32,
                  "bool": true,
                  "short": "-C",
                  "long": "--fileupload-container-name",
                  "description": "The storage container name where the files are to be uploaded"
                },
                {
                  "flags": "-T --fileupload-sas-uri-ttl [fileuploadSasUriTtl]",
                  "required": 0,
                  "optional": -29,
                  "bool": true,
                  "short": "-T",
                  "long": "--fileupload-sas-uri-ttl",
                  "description": "The amount of time for which the SAS Uri generated by IoT hub is valid before it expires, between 1 and 24 hours"
                },
                {
                  "flags": "-N --fileupload-notification-ttl [fileuploadNotificationTtl]",
                  "required": 0,
                  "optional": -34,
                  "bool": true,
                  "short": "-N",
                  "long": "--fileupload-notification-ttl",
                  "description": "The amount of time for which a file upload notification is available for the service to consume before it is expired by IoT hub, between 1 and 48 hours"
                },
                {
                  "flags": "-D --fileupload-notification-max-delivery-count [fileuploadNotificationMaxDeliveryCount]",
                  "required": 0,
                  "optional": -49,
                  "bool": true,
                  "short": "-D",
                  "long": "--fileupload-notification-max-delivery-count",
                  "description": "The number of times the IoT hub will attempt to deliver a file notification message, between 1 and 100"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "tags": {
          "name": "tags",
          "description": "Commands to manage the tags of an Iot hub",
          "fullName": "iothub tags",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "set",
              "description": "Set tags on the IoT hub",
              "fullName": "iothub tags set",
              "usage": "<resourceGroup> <name> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub"
                },
                {
                  "flags": "-t --tags [tags]",
                  "required": 0,
                  "optional": -11,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "The tags to set to the resource group. The tags specified here will replace the existing ones and not append to them. Can be multipleIn the format of 'name=value'. Name is required and value is optionalFor example, -t 'tag1=value1;tag2'."
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "sku": {
          "name": "sku",
          "description": "Commands to manage the sku related information of an IoT hub",
          "fullName": "iothub sku",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List the Valid IoT hub Skus",
              "fullName": "iothub sku list",
              "usage": "<resourceGroup> <name> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Get sku info for an IoT hub",
              "fullName": "iothub sku show",
              "usage": "<resourceGroup> <name> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            },
            {
              "name": "set",
              "description": "Set sku for an IoT hub",
              "fullName": "iothub sku set",
              "usage": "<resourceGroup> <name> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub"
                },
                {
                  "flags": "-k --sku-name <skuName>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--sku-name",
                  "description": "The name of the sku, one of: [F1, S1, S2, S3]"
                },
                {
                  "flags": "-u --units <units>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--units",
                  "description": "The number of provisioned units"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "ehconsumergroup": {
          "name": "ehconsumergroup",
          "description": "Commands to manage the event hub consumer groups of an IoT hub",
          "fullName": "iothub ehconsumergroup",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List the event hub consumer groups of an IoT hub",
              "fullName": "iothub ehconsumergroup list",
              "usage": "<resourceGroup> <name> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub"
                },
                {
                  "flags": "-e --eh-endpoint-type <ehEndpointType>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--eh-endpoint-type",
                  "description": "The type of the event hub endpoint. One of events, operationsMonitoringEvents"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            },
            {
              "name": "create",
              "description": "Add an Event Hub consumer groups for an IoT hub",
              "fullName": "iothub ehconsumergroup create",
              "usage": "<resourceGroup> <name> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub"
                },
                {
                  "flags": "-e --eh-endpoint-type <ehEndpointType>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--eh-endpoint-type",
                  "description": "The type of the event hub endpoint. One of events, operationsMonitoringEvents"
                },
                {
                  "flags": "-c --eh-consumer-group <ehConsumerGroup>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--eh-consumer-group",
                  "description": "The name of the event hub consumer group"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete an Event Hub consumer group for an IoT hub",
              "fullName": "iothub ehconsumergroup delete",
              "usage": "<resourceGroup> <name> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub"
                },
                {
                  "flags": "-e --eh-endpoint-type <ehEndpointType>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--eh-endpoint-type",
                  "description": "The type of the event hub endpoint. One of events, operationsMonitoringEvents"
                },
                {
                  "flags": "-c --eh-consumer-group <ehConsumerGroup>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--eh-consumer-group",
                  "description": "The name of the event hub consumer group"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "key": {
          "name": "key",
          "description": "Commands to manage the keys of an IoT hub",
          "fullName": "iothub key",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List all keys of an IoT hub",
              "fullName": "iothub key list",
              "usage": "<resourceGroup> <name> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show the properties of one key for an IoT hub",
              "fullName": "iothub key show",
              "usage": "<resourceGroup> <name> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub"
                },
                {
                  "flags": "-k --key-name <keyName>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--key-name",
                  "description": "The name of a key in IoT hub"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            },
            {
              "name": "create",
              "description": "Create keys for an IoT hub",
              "fullName": "iothub key create",
              "usage": "<resourceGroup> <name> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub"
                },
                {
                  "flags": "-k --key-name <keyName>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--key-name",
                  "description": "The name of a key in IoT hub"
                },
                {
                  "flags": "-p --primary-key <primaryKey>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--primary-key",
                  "description": "The primary key value for the specified keyName"
                },
                {
                  "flags": "-e --secondary-key <secondaryKey>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--secondary-key",
                  "description": "The secondary key value for the specified keyName"
                },
                {
                  "flags": "-r --rights <rights>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--rights",
                  "description": "The rights for the specified keyName. One ore more of the following to be specified as a comma separated value listRegistryRead, RegistryWrite, ServiceConnect, DeviceConnect"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete keys for an IoT hub",
              "fullName": "iothub key delete",
              "usage": "<resourceGroup> <name> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub"
                },
                {
                  "flags": "-k --key-name <keyName>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--key-name",
                  "description": "The name of a key in IoT hub to delete. The first match for a key with this name will be deleted. The same command can be executed again to delete more keys."
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "opmon": {
          "name": "opmon",
          "description": "Commands to manage the operations monitoring related properties of an IoT hub",
          "fullName": "iothub opmon",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "show",
              "description": "Show the operations monitoring properties of an IoT hub",
              "fullName": "iothub opmon show",
              "usage": "<resourceGroup> <name> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            },
            {
              "name": "set",
              "description": "Update the operations monitoring properties for an IoT hub",
              "fullName": "iothub opmon set",
              "usage": "<resourceGroup> <name> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IotHub"
                },
                {
                  "flags": "-c --opmon-category <opmonCategory>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--opmon-category",
                  "description": "The name of the operations monitoring category. One of Connections, DeviceTelemetry, C2DCommands, DeviceIdentityOperations, FileUploadOperations"
                },
                {
                  "flags": "-l --diagnostic-level <diagnosticLevel>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--diagnostic-level",
                  "description": "The diagnostic level. None, Error, Information."
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "job": {
          "name": "job",
          "description": "Commands to manage the jobs of an IoT hub",
          "fullName": "iothub job",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List the jobs for an IoT hub",
              "fullName": "iothub job list",
              "usage": "<resourceGroup> <name> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show the properties of a job for an IoT hub",
              "fullName": "iothub job show",
              "usage": "<resourceGroup> <name> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub"
                },
                {
                  "flags": "-j --job-id <jobId>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-j",
                  "long": "--job-id",
                  "description": "The Job identifier"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "device": {
          "name": "device",
          "description": "Commands to manage the devices of an IoT hub",
          "fullName": "iothub device",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "export",
              "description": "Export the devices of an IoT hub",
              "fullName": "iothub device export",
              "usage": "<resourceGroup> <name> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub"
                },
                {
                  "flags": "-e --export-blob-container-uri <exportBlobContainerUri>",
                  "required": -32,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--export-blob-container-uri",
                  "description": "The container Uri to export the devices to"
                },
                {
                  "flags": "-k --exclude-keys [excludeKeys]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-k",
                  "long": "--exclude-keys",
                  "description": "The flag indicating if the keys should also be exported or not. One of true, false. Default : true"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            },
            {
              "name": "import",
              "description": "Import the devices of an IoT hub",
              "fullName": "iothub device import",
              "usage": "<resourceGroup> <name> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub"
                },
                {
                  "flags": "-i --input-blob-container-uri <inputBlobContainerUri>",
                  "required": -31,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--input-blob-container-uri",
                  "description": "The container Uri from where devices will be imported"
                },
                {
                  "flags": "-o --output-blob-container-uri [outputBlobContainerUri]",
                  "required": 0,
                  "optional": -32,
                  "bool": true,
                  "short": "-o",
                  "long": "--output-blob-container-uri",
                  "description": "The output container Uri which will be used to write some information related to the import job"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "connectionstring": {
          "name": "connectionstring",
          "description": "Command to get the connection string of an IoT hub",
          "fullName": "iothub connectionstring",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "show",
              "description": "Get an IoT hub connection string",
              "fullName": "iothub connectionstring show",
              "usage": "<resourceGroup> <name> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group."
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub."
                },
                {
                  "flags": "-k --key-name <keyName>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--key-name",
                  "description": "The name of the key. Default : The first key in the list of keys retrieved for the iothub"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier."
                }
              ]
            }
          ],
          "categories": {}
        },
        "routing": {
          "name": "routing",
          "description": "Commands to manage the routing properties of an IoT hub",
          "fullName": "iothub routing",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List the IoT hub routing properties",
              "fullName": "iothub routing list",
              "usage": "<resourceGroup> <name> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                },
                {
                  "flags": "-f --output-file [output-file]",
                  "required": 0,
                  "optional": -18,
                  "bool": true,
                  "short": "-f",
                  "long": "--output-file",
                  "description": "the path to the JSON-formatted output routing properties file in the file system",
                  "fileRelatedOption": true
                }
              ]
            },
            {
              "name": "set",
              "description": "set the IoT hub routing properties",
              "fullName": "iothub routing set",
              "usage": "<resourceGroup> <name> <inputFile> [options]",
              "filePath": "commands/arm/iothub/iothub.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "The name of the IoT hub"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                },
                {
                  "flags": "-f --input-file <inputFile>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--input-file",
                  "description": "the path to the JSON-formatted input routing properties file in the file system",
                  "fileRelatedOption": true
                }
              ]
            }
          ],
          "categories": {}
        }
      }
    },
    "keyvault": {
      "name": "keyvault",
      "description": "Commands to manage key vault instances in the Azure Key Vault service",
      "fullName": "keyvault",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "list",
          "description": "Lists existing vaults",
          "fullName": "keyvault list",
          "usage": "[[--resource-group] <resource-group>] [options]",
          "filePath": "commands/arm/keyvault/keyvault.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "lists only vaults belonging to the informed resource group"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "create",
          "description": "Creates a vault",
          "fullName": "keyvault create",
          "usage": "[--vault-name] <vault-name> --resource-group <resource-group> --location <location> [options]",
          "filePath": "commands/arm/keyvault/keyvault.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-u, --vault-name <vault-name>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-u",
              "long": "--vault-name",
              "description": "the vault name; this is used to compute the vault's DNS name"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-l, --location <location>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-l",
              "long": "--location",
              "description": "Azure region in which to create the vault"
            },
            {
              "flags": "-x, --sku <sku>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-x",
              "long": "--sku",
              "description": "SKU setting, one of: [Standard, Premium]"
            },
            {
              "flags": "-t, --tags <tags>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--tags",
              "description": "Tags to set on the vault. Can be multiple in the format 'name=value'. Name is required and value is optional. For example, -t tag1=value1;tag2"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            },
            {
              "flags": "--no-self-perms",
              "required": 0,
              "optional": 0,
              "bool": false,
              "long": "--no-self-perms",
              "description": "If specified, don't add permissions for the current user in the new vault"
            }
          ]
        },
        {
          "name": "set-attributes",
          "description": "Changes attributes of an existing vault",
          "fullName": "keyvault set-attributes",
          "usage": "[--vault-name] <vault-name> [options]",
          "filePath": "commands/arm/keyvault/keyvault.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-u, --vault-name <vault-name>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-u",
              "long": "--vault-name",
              "description": "the vault name"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "changes only if vault belongs to the informed resource group; otherwise returns 'not found'"
            },
            {
              "flags": "-x, --sku <sku>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-x",
              "long": "--sku",
              "description": "SKU setting, one of: [Standard, Premium]"
            },
            {
              "flags": "-t, --tags <tags>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--tags",
              "description": "Tags to set on the vault. Can be multiple in the format 'name=value'. Name is required and value is optional. For example, -t tag1=value1;tag2"
            },
            {
              "flags": "--reset-tags",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--reset-tags",
              "description": "remove previously existing tags; can combined with --tags"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "show",
          "description": "Shows properties of a vault",
          "fullName": "keyvault show",
          "usage": "[--vault-name] <vault-name> [options]",
          "filePath": "commands/arm/keyvault/keyvault.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-u, --vault-name <vault-name>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-u",
              "long": "--vault-name",
              "description": "the vault name"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "shows only if vault belongs to the informed resource group; otherwise returns 'not found'"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "delete",
          "description": "Deletes an existing vault",
          "fullName": "keyvault delete",
          "usage": "[--vault-name] <vault-name> [options]",
          "filePath": "commands/arm/keyvault/keyvault.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-u, --vault-name <vault-name>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-u",
              "long": "--vault-name",
              "description": "the vault name"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "deletes only if vault belongs to the informed resource group; otherwise returns 'not found'"
            },
            {
              "flags": "-q, --quiet",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-q",
              "long": "--quiet",
              "description": "quiet mode (do not ask for delete confirmation)"
            },
            {
              "flags": "-p, --pass-thru",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--pass-thru",
              "description": "outputs the deleted vault"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "set-policy",
          "description": "Adds or modifies an access policy for a vault",
          "fullName": "keyvault set-policy",
          "usage": "[--vault-name] <vault-name> [options]",
          "filePath": "commands/arm/keyvault/keyvault.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-u, --vault-name <vault-name>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-u",
              "long": "--vault-name",
              "description": "the vault name"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "changes only if vault belongs to the informed resource group; otherwise returns 'not found'"
            },
            {
              "flags": "--object-id <object-id>",
              "required": -13,
              "optional": 0,
              "bool": true,
              "long": "--object-id",
              "description": "a GUID that identifies the principal that will receive permissions"
            },
            {
              "flags": "--spn <service-principal-name>",
              "required": -7,
              "optional": 0,
              "bool": true,
              "long": "--spn",
              "description": "name of a service principal that will receive permissions"
            },
            {
              "flags": "--upn <user-principal-name>",
              "required": -7,
              "optional": 0,
              "bool": true,
              "long": "--upn",
              "description": "name of a user principal that will receive permissions"
            },
            {
              "flags": "--perms-to-keys <perms-to-keys>",
              "required": -17,
              "optional": 0,
              "bool": true,
              "long": "--perms-to-keys",
              "description": "JSON-encoded array of strings representing key operations; each string can be one of [all, create, import, update, delete, get, list, backup, restore, sign, verify, encrypt, decrypt, wrapKey, unwrapKey]"
            },
            {
              "flags": "--perms-to-secrets <perms-to-secrets>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "long": "--perms-to-secrets",
              "description": "JSON-encoded array of strings representing secret operations; each string can be one of [all, set, get, list, delete]"
            },
            {
              "flags": "--perms-to-certificates <perms-to-certificates>",
              "required": -25,
              "optional": 0,
              "bool": true,
              "long": "--perms-to-certificates",
              "description": "JSON-encoded array of strings representing certificate operations; each string can be one of [all, get, list, delete, create, import, update, managecontacts, getissuers, listissuers, setissuers, deleteissuers]"
            },
            {
              "flags": "--enabled-for-deployment <boolean>",
              "required": -26,
              "optional": 0,
              "bool": true,
              "long": "--enabled-for-deployment",
              "description": "specifies whether the Azure Compute resource provider can access secrets"
            },
            {
              "flags": "--enabled-for-template-deployment <boolean>",
              "required": -35,
              "optional": 0,
              "bool": true,
              "long": "--enabled-for-template-deployment",
              "description": "specifies whether Azure Resource Manager can access secrets"
            },
            {
              "flags": "--enabled-for-disk-encryption <boolean>",
              "required": -31,
              "optional": 0,
              "bool": true,
              "long": "--enabled-for-disk-encryption",
              "description": "specifies whether Azure Disk Encryption can access secrets"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "delete-policy",
          "description": "Removes an access policy from a vault",
          "fullName": "keyvault delete-policy",
          "usage": "[--vault-name] <vault-name> [options]",
          "filePath": "commands/arm/keyvault/keyvault.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-u, --vault-name <vault-name>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-u",
              "long": "--vault-name",
              "description": "the vault name"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "deletes only if vault belongs to the informed resource group; otherwise returns 'not found'"
            },
            {
              "flags": "--object-id <object-id>",
              "required": -13,
              "optional": 0,
              "bool": true,
              "long": "--object-id",
              "description": "a GUID that identifies the principal that will lose permissions"
            },
            {
              "flags": "--spn <service-principal-name>",
              "required": -7,
              "optional": 0,
              "bool": true,
              "long": "--spn",
              "description": "name of a service principal that will lose permissions"
            },
            {
              "flags": "--upn <user-principal-name>",
              "required": -7,
              "optional": 0,
              "bool": true,
              "long": "--upn",
              "description": "name of a user principal that will lose permissions"
            },
            {
              "flags": "--enabled-for-deployment",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--enabled-for-deployment",
              "description": "if provided, will set the enabledForDeployment property to false in the vault"
            },
            {
              "flags": "--enabled-for-template-deployment",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--enabled-for-template-deployment",
              "description": "if provided, will set the enabledForTemplateDeployment property to false in the vault"
            },
            {
              "flags": "--enabled-for-disk-encryption",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--enabled-for-disk-encryption",
              "description": "if provided, will set the enabledForDiskEncryption property to false in the vault"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        }
      ],
      "categories": {
        "certificate": {
          "name": "certificate",
          "description": "Commands to manage certificates in the Azure Key Vault service",
          "fullName": "keyvault certificate",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "Lists certificates of a vault",
              "fullName": "keyvault certificate list",
              "usage": "[options] <vault-name>",
              "filePath": "commands/arm/keyvault/keyvault.certificate.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                }
              ]
            },
            {
              "name": "list-versions",
              "description": "Lists certificate versions",
              "fullName": "keyvault certificate list-versions",
              "usage": "[options] <vault-name> [certificate-name]",
              "filePath": "commands/arm/keyvault/keyvault.certificate.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                },
                {
                  "flags": "-c, --certificate-name <certificate-name>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--certificate-name",
                  "description": "lists only versions of this certificate"
                }
              ]
            },
            {
              "name": "show",
              "description": "Shows a vault certificate",
              "fullName": "keyvault certificate show",
              "usage": "[options] <vault-name> <certificate-name> [certificate-version]",
              "filePath": "commands/arm/keyvault/keyvault.certificate.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                },
                {
                  "flags": "-c, --certificate-name <certificate-name>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--certificate-name",
                  "description": "the certificate name"
                },
                {
                  "flags": "-r, --certificate-version <certificate-version>",
                  "required": -27,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--certificate-version",
                  "description": "the certificate version; if omited, uses the most recent"
                }
              ]
            },
            {
              "name": "get",
              "description": "Downloads a certificate from the vault",
              "fullName": "keyvault certificate get",
              "usage": "[options] <vault-name> <certificate-name> [certificate-version] <file>",
              "filePath": "commands/arm/keyvault/keyvault.certificate.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                },
                {
                  "flags": "-c, --certificate-name <certificate-name>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--certificate-name",
                  "description": "the certificate name"
                },
                {
                  "flags": "-r, --certificate-version <certificate-version>",
                  "required": -27,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--certificate-version",
                  "description": "the certificate version; if omited, uses the most recent"
                },
                {
                  "flags": "--file <file>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--file",
                  "description": "the file to receive certificate contents; the file must not exist otherwise the command fails"
                },
                {
                  "flags": "--encode <encoding>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--encode",
                  "description": "tells to write a file by encoding certificate contents with the informed encoding; valid values: [base64]"
                }
              ]
            },
            {
              "name": "create",
              "description": "Creates a certificate in the vault",
              "fullName": "keyvault certificate create",
              "usage": "[options] <vault-name> <certificate-name>",
              "filePath": "commands/arm/keyvault/keyvault.certificate.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                },
                {
                  "flags": "-c, --certificate-name <certificate-name>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--certificate-name",
                  "description": "the certificate name"
                },
                {
                  "flags": "-p --certificate-policy <certificate-policy>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--certificate-policy",
                  "description": "a JSON-formatted string containing the certificate policy."
                },
                {
                  "flags": "-e --certificate-policy-file <certificate-policy-file>",
                  "required": -30,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--certificate-policy-file",
                  "description": "a file containing the certificate policy. Mutually exlcusive with --certificate-policy.",
                  "fileRelatedOption": true
                },
                {
                  "flags": "-t, --tags <tags>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "Tags to set on the certificate. Can be multiple in the format 'name=value'. Name is required and value is optional. For example, -t tag1=value1;tag2"
                }
              ]
            },
            {
              "name": "import",
              "description": "Imports a certificate into the vault",
              "fullName": "keyvault certificate import",
              "usage": "[options] <vault-name> <certificate-name>",
              "filePath": "commands/arm/keyvault/keyvault.certificate.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                },
                {
                  "flags": "-c, --certificate-name <certificate-name>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--certificate-name",
                  "description": "the certificate name"
                },
                {
                  "flags": "-b --content <content>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--content",
                  "description": "a base64 encoded string containing the certificate and private key (optional) to be imported"
                },
                {
                  "flags": "-e --content-file <content-file>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--content-file",
                  "description": "a file containing the certificate and private key (optional) to be imported",
                  "fileRelatedOption": true
                },
                {
                  "flags": "--content-file-binary <boolean>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--content-file-binary",
                  "description": "indicates if the content file is binary. valid values: [false, true]. default is false."
                },
                {
                  "flags": "-d, --password <password>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--password",
                  "description": "password of the file if it contains a encrypted private key"
                },
                {
                  "flags": "-p --certificate-policy <certificate-policy>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--certificate-policy",
                  "description": "a JSON-formatted string containing the certificate policy."
                },
                {
                  "flags": "-e --certificate-policy-file <certificate-policy-file>",
                  "required": -30,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--certificate-policy-file",
                  "description": "a file containing the certificate policy. Mutually exlusive with --certificate-policy.",
                  "fileRelatedOption": true
                },
                {
                  "flags": "-t, --tags <tags>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "Tags to set on the certificate. Can be multiple in the format 'name=value'. Name is required and value is optional. For example, -t tag1=value1;tag2"
                }
              ]
            },
            {
              "name": "merge",
              "description": "Merges certificate(s)into the vault",
              "fullName": "keyvault certificate merge",
              "usage": "[options] <vault-name> <certificate-name> <content>",
              "filePath": "commands/arm/keyvault/keyvault.certificate.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                },
                {
                  "flags": "-c, --certificate-name <certificate-name>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--certificate-name",
                  "description": "the certificate name"
                },
                {
                  "flags": "-b --content <content>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--content",
                  "description": "certificate chain to merge; must be JSON-encoded array of base64 encoded certificate"
                },
                {
                  "flags": "-t, --tags <tags>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "Tags to set on the certificate. Can be multiple in the format 'name=value'. Name is required and value is optional. For example, -t tag1=value1;tag2"
                }
              ]
            },
            {
              "name": "set-attributes",
              "description": "Changes attributes of an existing certificate",
              "fullName": "keyvault certificate set-attributes",
              "usage": "[options] <vault-name> <certificate-name> [certificate-version]",
              "filePath": "commands/arm/keyvault/keyvault.certificate.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                },
                {
                  "flags": "-c, --certificate-name <certificate-name>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--certificate-name",
                  "description": "name of the certificate to be modified"
                },
                {
                  "flags": "-r, --certificate-version <certificate-version>",
                  "required": -27,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--certificate-version",
                  "description": "the version to be modified; if omited, modifies only the most recent"
                },
                {
                  "flags": "--enabled <boolean>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "long": "--enabled",
                  "description": "if informed, command will change the enabled state; valid values: [false, true]"
                },
                {
                  "flags": "-t, --tags <tags>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "Tags to set on the certificate. Can be multiple in the format 'name=value'. Name is required and value is optional. For example, -t tag1=value1;tag2"
                },
                {
                  "flags": "--reset-tags",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--reset-tags",
                  "description": "remove previously existing tags; can combined with --tags"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Deletes a certificate from the vault",
              "fullName": "keyvault certificate delete",
              "usage": "[options] <vault-name> <certificate-name>",
              "filePath": "commands/arm/keyvault/keyvault.certificate.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                },
                {
                  "flags": "-c, --certificate-name <certificate-name>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--certificate-name",
                  "description": "the certificate name"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode (do not ask for delete confirmation)"
                }
              ]
            }
          ],
          "categories": {
            "policy": {
              "name": "policy",
              "description": "Commands to manage a certificate policy in the Azure Key Vault service",
              "fullName": "keyvault certificate policy",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Shows a vault certificate policy",
                  "fullName": "keyvault certificate policy show",
                  "usage": "[options] <vault-name> <certificate-name>",
                  "filePath": "commands/arm/keyvault/keyvault.certificate.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-u, --vault-name <vault-name>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--vault-name",
                      "description": "the vault name"
                    },
                    {
                      "flags": "-c, --certificate-name <certificate-name>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--certificate-name",
                      "description": "the certificate name"
                    }
                  ]
                },
                {
                  "name": "get",
                  "description": "Gets a vault certificate policy",
                  "fullName": "keyvault certificate policy get",
                  "usage": "[options] <vault-name> <certificate-name> <file>",
                  "filePath": "commands/arm/keyvault/keyvault.certificate.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-u, --vault-name <vault-name>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--vault-name",
                      "description": "the vault name"
                    },
                    {
                      "flags": "-c, --certificate-name <certificate-name>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--certificate-name",
                      "description": "the certificate name"
                    },
                    {
                      "flags": "--file <file>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--file",
                      "description": "the file to receive certificate policy contents; the file must not exist otherwise the command fails"
                    }
                  ]
                },
                {
                  "name": "create",
                  "description": "Creates a new certificate policy JSON object. This policy object can be used as input to other certificate commands such as certificate create.",
                  "fullName": "keyvault certificate policy create",
                  "usage": "options <issuer-name> [subject-name] [file]",
                  "filePath": "commands/arm/keyvault/keyvault.certificate.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-i, --issuer-name <issuer-name>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--issuer-name",
                      "description": "issuer name"
                    },
                    {
                      "flags": "-n, --subject-name <subject-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--subject-name",
                      "description": "subject name"
                    },
                    {
                      "flags": "--file <file>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--file",
                      "description": "the file to receive certificate policy object; the file must not exist otherwise the command fails"
                    },
                    {
                      "flags": "-k, --key-type <key-type>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--key-type",
                      "description": "tells if the key backing the certificate is software-protected or HSM-protected; valid values: [RSA, RSA-HSM]"
                    },
                    {
                      "flags": "--reuse-key-on-renewal",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--reuse-key-on-renewal",
                      "description": "indicates if the key should be reused on renewal; defaults to key is not reused"
                    },
                    {
                      "flags": "--key-not-exportable",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--key-not-exportable",
                      "description": "indicates if the key should not be exportable; defaults to key is exportable"
                    },
                    {
                      "flags": "-t, --secret-content-type <secret-content-type>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--secret-content-type",
                      "description": "secret content type; valid values: [application/x-pkcs12, application/x-pem-file]"
                    },
                    {
                      "flags": "-d, --dns-names <dns-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--dns-names",
                      "description": "subject alternative dns names; must be JSON-encoded array of strings"
                    },
                    {
                      "flags": "-e, --ekus <ekus>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--ekus",
                      "description": "extended key usages; must be JSON-encoded array of strings"
                    },
                    {
                      "flags": "-m, --validity-in-months <validity-in-months>",
                      "required": -26,
                      "optional": 0,
                      "bool": true,
                      "short": "-m",
                      "long": "--validity-in-months",
                      "description": "validity of the certificate in months"
                    },
                    {
                      "flags": "-c, --certificate-type <certificate-type>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--certificate-type",
                      "description": "Type of certificate to be requested from the issuer"
                    },
                    {
                      "flags": "--renew-days-before-expiry <renew-days-before-expiry>",
                      "required": -28,
                      "optional": 0,
                      "bool": true,
                      "long": "--renew-days-before-expiry",
                      "description": "number of days before expiry to automatically renew the certificate"
                    },
                    {
                      "flags": "--renew-at-percentage-lifetime <renew-at-percentage-lifetime>",
                      "required": -32,
                      "optional": 0,
                      "bool": true,
                      "long": "--renew-at-percentage-lifetime",
                      "description": "lifetime percentage at which automatically renew the certificate"
                    },
                    {
                      "flags": "--email-days-before-expiry <email-days-before-expiry>",
                      "required": -28,
                      "optional": 0,
                      "bool": true,
                      "long": "--email-days-before-expiry",
                      "description": "number of days before expiry to send notification"
                    },
                    {
                      "flags": "--email-at-percentage-lifetime <email-at-percentage-lifetime>",
                      "required": -32,
                      "optional": 0,
                      "bool": true,
                      "long": "--email-at-percentage-lifetime",
                      "description": "lifetime percentage at which send notification"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Sets a vault certificate policy",
                  "fullName": "keyvault certificate policy set",
                  "usage": "[options] <vault-name> <certificate-name>",
                  "filePath": "commands/arm/keyvault/keyvault.certificate.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-u, --vault-name <vault-name>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--vault-name",
                      "description": "the vault name"
                    },
                    {
                      "flags": "-c, --certificate-name <certificate-name>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--certificate-name",
                      "description": "the certificate name"
                    },
                    {
                      "flags": "-p --certificate-policy <certificate-policy>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--certificate-policy",
                      "description": "a JSON-formatted string containing the certificate policy"
                    },
                    {
                      "flags": "-e --certificate-policy-file <certificate-policy-file>",
                      "required": -30,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--certificate-policy-file",
                      "description": "a file containing the certificate policy.Mutually exlcusive with --certificate-policy.",
                      "fileRelatedOption": true
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "operation": {
              "name": "operation",
              "description": "Commands to manage certificate operations in the Azure Key Vault service",
              "fullName": "keyvault certificate operation",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Shows a vault certificate operation",
                  "fullName": "keyvault certificate operation show",
                  "usage": "[options] <vault-name> <certificate-name>",
                  "filePath": "commands/arm/keyvault/keyvault.certificate.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-u, --vault-name <vault-name>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--vault-name",
                      "description": "the vault name"
                    },
                    {
                      "flags": "-c, --certificate-name <certificate-name>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--certificate-name",
                      "description": "the certificate name"
                    }
                  ]
                },
                {
                  "name": "cancel",
                  "description": "Cancels a vault certificate operation",
                  "fullName": "keyvault certificate operation cancel",
                  "usage": "[options] <vault-name> <certificate-name>",
                  "filePath": "commands/arm/keyvault/keyvault.certificate.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-u, --vault-name <vault-name>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--vault-name",
                      "description": "the vault name"
                    },
                    {
                      "flags": "-c, --certificate-name <certificate-name>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--certificate-name",
                      "description": "the certificate name"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode (do not ask for cancel confirmation)"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Deletes a vault certificate operation",
                  "fullName": "keyvault certificate operation delete",
                  "usage": "[options] <vault-name> <certificate-name>",
                  "filePath": "commands/arm/keyvault/keyvault.certificate.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-u, --vault-name <vault-name>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--vault-name",
                      "description": "the vault name"
                    },
                    {
                      "flags": "-c, --certificate-name <certificate-name>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--certificate-name",
                      "description": "the certificate name"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode (do not ask for delete confirmation)"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "administrator": {
              "name": "administrator",
              "description": "Commands to manage certificate administrators in the Azure Key Vault service",
              "fullName": "keyvault certificate administrator",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Creates a new certificate administator JSON object. This administratory object can be used as input to other certificate commands such as organization create.",
                  "fullName": "keyvault certificate administrator create",
                  "usage": "[options] [first-name] [last-name] [email-address] [phone-number] [file]",
                  "filePath": "commands/arm/keyvault/keyvault.certificate.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-f, --first-name <first-name>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--first-name",
                      "description": "first name"
                    },
                    {
                      "flags": "-l, --last-name <last-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--last-name",
                      "description": "last name"
                    },
                    {
                      "flags": "-e, --email-address <email-address>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--email-address",
                      "description": "email-address"
                    },
                    {
                      "flags": "-p, --phone-number <phone-number>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--phone-number",
                      "description": "phone-number"
                    },
                    {
                      "flags": "--file <file>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--file",
                      "description": "the file to receive certificate administator object; the file must not exist otherwise the command fails"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "organization": {
              "name": "organization",
              "description": "Commands to manage certificate organization in the Azure Key Vault service",
              "fullName": "keyvault certificate organization",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Creates a new certificate organization JSON object. This organization object can be used as input to other certificate commands such as issuer create.",
                  "fullName": "keyvault certificate organization create",
                  "usage": "[options] [id] [file]",
                  "filePath": "commands/arm/keyvault/keyvault.certificate.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-i, --id <id>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--id",
                      "description": "organization identifier"
                    },
                    {
                      "flags": "-a --certificate-administrator <certificate-administrator>",
                      "required": -32,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--certificate-administrator",
                      "description": "a JSON-formatted string containing a certificate administrator or an array of certificate administrators"
                    },
                    {
                      "flags": "-e --certificate-administrator-file <certificate-administrator-file>",
                      "required": -37,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--certificate-administrator-file",
                      "description": "a file containing a certificate administrator or an array of certificate administrator. Mutually exclusive with --certificate-administrator.",
                      "fileRelatedOption": true
                    },
                    {
                      "flags": "--file <file>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--file",
                      "description": "the file to receive certificate organization object; the file must not exist otherwise the command fails"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "issuer": {
              "name": "issuer",
              "description": "Commands to manage certificate issuers in the Azure Key Vault service",
              "fullName": "keyvault certificate issuer",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "Lists certificate issuers of a vault",
                  "fullName": "keyvault certificate issuer list",
                  "usage": "[options] <vault-name>",
                  "filePath": "commands/arm/keyvault/keyvault.certificate.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-u, --vault-name <vault-name>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--vault-name",
                      "description": "the vault name"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Shows a vault certificate issuer",
                  "fullName": "keyvault certificate issuer show",
                  "usage": "[options] <vault-name> <certificate-issuer-name>",
                  "filePath": "commands/arm/keyvault/keyvault.certificate.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-u, --vault-name <vault-name>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--vault-name",
                      "description": "the vault name"
                    },
                    {
                      "flags": "-c, --certificate-issuer-name <certificate-issuer-name>",
                      "required": -31,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--certificate-issuer-name",
                      "description": "the certificate issuer name"
                    }
                  ]
                },
                {
                  "name": "create",
                  "description": "Creates a vault certificate issuer",
                  "fullName": "keyvault certificate issuer create",
                  "usage": "[options] <vault-name> <certificate-issuer-name> <provider-name> ",
                  "filePath": "commands/arm/keyvault/keyvault.certificate.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-u, --vault-name <vault-name>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--vault-name",
                      "description": "the vault name"
                    },
                    {
                      "flags": "-c, --certificate-issuer-name <certificate-issuer-name>",
                      "required": -31,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--certificate-issuer-name",
                      "description": "the certificate issuer name"
                    },
                    {
                      "flags": "-p, --provider-name <provider-name>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--provider-name",
                      "description": "the provider-name"
                    },
                    {
                      "flags": "-a, --account-id <account-id>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--account-id",
                      "description": "account identifier"
                    },
                    {
                      "flags": "-k, --api-key <api-key>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--api-key",
                      "description": "api key for the account"
                    },
                    {
                      "flags": "-o, --certificate-organization <certificate-organization>",
                      "required": -32,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--certificate-organization",
                      "description": "the certificate organization"
                    },
                    {
                      "flags": "-e --certificate-organization-file <certificate-organization-file>",
                      "required": -36,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--certificate-organization-file",
                      "description": "a file containing the certificate organization. Mutually exclusive with --certificate-organization.",
                      "fileRelatedOption": true
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Deletes a certificate issuer from the vault",
                  "fullName": "keyvault certificate issuer delete",
                  "usage": "[options] <vault-name> <certificate-issuer-name>",
                  "filePath": "commands/arm/keyvault/keyvault.certificate.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-u, --vault-name <vault-name>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--vault-name",
                      "description": "the vault name"
                    },
                    {
                      "flags": "-c, --certificate-issuer-name <certificate-issuer-name>",
                      "required": -31,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--certificate-issuer-name",
                      "description": "the certificate issuer name"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode (do not ask for delete confirmation)"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "contact": {
              "name": "contact",
              "description": "Commands to manage certificate contacts in the Azure Key Vault service",
              "fullName": "keyvault certificate contact",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "List vault certificate contacts",
                  "fullName": "keyvault certificate contact list",
                  "usage": "[options] <vault-name>",
                  "filePath": "commands/arm/keyvault/keyvault.certificate.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-u, --vault-name <vault-name>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--vault-name",
                      "description": "the vault name"
                    }
                  ]
                },
                {
                  "name": "add",
                  "description": "Adds a certificate contact to the vault",
                  "fullName": "keyvault certificate contact add",
                  "usage": "[options] <vault-name> <email-address>",
                  "filePath": "commands/arm/keyvault/keyvault.certificate.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-u, --vault-name <vault-name>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--vault-name",
                      "description": "the vault name"
                    },
                    {
                      "flags": "-e, --email-address <email-address>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--email-address",
                      "description": "the contact email address"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Deletes a certificate contact from the vault",
                  "fullName": "keyvault certificate contact delete",
                  "usage": "[options <vault-name> <email-address>",
                  "filePath": "commands/arm/keyvault/keyvault.certificate.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-u, --vault-name <vault-name>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--vault-name",
                      "description": "the vault name"
                    },
                    {
                      "flags": "-e, --email-address <email-address>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--email-address",
                      "description": "the email address"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode (do not ask for delete confirmation)"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "key": {
          "name": "key",
          "description": "Commands to manage keys in the Azure Key Vault service",
          "fullName": "keyvault key",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "Lists keys of a vault",
              "fullName": "keyvault key list",
              "usage": "[options] <vault-name>",
              "filePath": "commands/arm/keyvault/keyvault.key.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                }
              ]
            },
            {
              "name": "list-versions",
              "description": "Lists key versions",
              "fullName": "keyvault key list-versions",
              "usage": "[options] <vault-name> [key-name>]",
              "filePath": "commands/arm/keyvault/keyvault.key.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                },
                {
                  "flags": "-k, --key-name <key-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--key-name",
                  "description": "lists only versions of this key"
                }
              ]
            },
            {
              "name": "create",
              "description": "Creates a key in the vault",
              "fullName": "keyvault key create",
              "usage": "[options] <vault-name> <key-name>",
              "filePath": "commands/arm/keyvault/keyvault.key.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                },
                {
                  "flags": "-k, --key-name <key-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--key-name",
                  "description": "name of the key to be created; if already exists, a new key version is generated"
                },
                {
                  "flags": "-d, --destination <destination>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--destination",
                  "description": "tells if the key is software-protected or HSM-protected; valid values: [Software, HSM]"
                },
                {
                  "flags": "--enabled <boolean>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "long": "--enabled",
                  "description": "tells if the key should be enabled; valid values: [false, true]; default is true"
                },
                {
                  "flags": "-e, --expires <datetime>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--expires",
                  "description": "key expiration time, expressed in RFC-1123/ISO8601 date format"
                },
                {
                  "flags": "-n, --not-before <datetime>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--not-before",
                  "description": "time before which key cannot be used, expressed in RFC-1123/ISO8601 date format"
                },
                {
                  "flags": "-o, --key-ops <key-ops>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--key-ops",
                  "description": "JSON-encoded array of strings representing key operations; each string can be one of [encrypt, decrypt, sign, verify, wrapKey, unwrapKey]"
                },
                {
                  "flags": "-t, --tags <tags>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "Tags to set on the key. Can be multiple in the format 'name=value'. Name is required and value is optional. For example, -t tag1=value1;tag2"
                }
              ]
            },
            {
              "name": "import",
              "description": "Imports an existing key into a vault",
              "fullName": "keyvault key import",
              "usage": "[options] <vault-name> <key-name>",
              "filePath": "commands/arm/keyvault/keyvault.key.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                },
                {
                  "flags": "-k, --key-name <key-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--key-name",
                  "description": "name of the key to be imported; if already exists, a new key version is generated"
                },
                {
                  "flags": "--pem-file <file-name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--pem-file",
                  "description": "name of a PEM file containing the key to be imported; the file must not be password protected"
                },
                {
                  "flags": "--byok-file <file-name>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--byok-file",
                  "description": "name of a BYOK file containing the key to be imported"
                },
                {
                  "flags": "-p, --password <password>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--password",
                  "description": "password of key file; if not informed and the file is encrypted, will prompt"
                },
                {
                  "flags": "-d, --destination <destination>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--destination",
                  "description": "tells if the key is software-protected or HSM-protected; valid values: [Software, HSM]"
                },
                {
                  "flags": "--enabled <boolean>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "long": "--enabled",
                  "description": "tells if the key should be enabled; valid values: [false, true]; default is true"
                },
                {
                  "flags": "-e, --expires <datetime>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--expires",
                  "description": "key expiration time, expressed in RFC-1123/ISO8601 date format"
                },
                {
                  "flags": "-n, --not-before <datetime>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--not-before",
                  "description": "time before which key cannot be used, expressed in RFC-1123/ISO8601 date format"
                },
                {
                  "flags": "-o, --key-ops <key-ops>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--key-ops",
                  "description": "JSON-encoded array of strings representing key operations; each string can be one of [encrypt, decrypt, sign, verify, wrapKey, unwrapKey]"
                },
                {
                  "flags": "-t, --tags <tags>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "Tags to set on the key. Can be multiple in the format 'name=value'. Name is required and value is optional. For example, -t tag1=value1;tag2"
                }
              ]
            },
            {
              "name": "set-attributes",
              "description": "Changes attributes of an existing key",
              "fullName": "keyvault key set-attributes",
              "usage": "[options] <vault-name> <key-name> [key-version]",
              "filePath": "commands/arm/keyvault/keyvault.key.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                },
                {
                  "flags": "-k, --key-name <key-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--key-name",
                  "description": "name of the key to be modified"
                },
                {
                  "flags": "-r, --key-version <key-version>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--key-version",
                  "description": "the version to be modified; if omited, modifies only the most recent"
                },
                {
                  "flags": "--enabled <boolean>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "long": "--enabled",
                  "description": "if informed, command will change the enabled state; valid values: [false, true]"
                },
                {
                  "flags": "-e, --expires <datetime>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--expires",
                  "description": "if informed, command will change secret expiration time; expressed in RFC-1123/ISO8601 date format, or null to clear the value"
                },
                {
                  "flags": "-n, --not-before <datetime>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--not-before",
                  "description": "if informed, command will change time before which secret cannot be used; expressed in RFC-1123/ISO8601 date format, or null to clear the value"
                },
                {
                  "flags": "-o, --key-ops <key-ops>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--key-ops",
                  "description": "if informed, command will change valid operations; must be JSON-encoded array of strings representing key operations; each string can be one of [encrypt, decrypt, sign, verify, wrapKey, unwrapKey]"
                },
                {
                  "flags": "-t, --tags <tags>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "Tags to set on the key. Can be multiple in the format 'name=value'. Name is required and value is optional. For example, -t tag1=value1;tag2"
                },
                {
                  "flags": "--reset-tags",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--reset-tags",
                  "description": "remove previously existing tags; can combined with --tags"
                }
              ]
            },
            {
              "name": "show",
              "description": "Shows properties of a vault key",
              "fullName": "keyvault key show",
              "usage": "[options] <vault-name> <key-name> [key-version]",
              "filePath": "commands/arm/keyvault/keyvault.key.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                },
                {
                  "flags": "-k, --key-name <key-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--key-name",
                  "description": "the key name"
                },
                {
                  "flags": "-r, --key-version <key-version>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--key-version",
                  "description": "the key version; if omited, uses the most recent"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Deletes a key from the vault",
              "fullName": "keyvault key delete",
              "usage": "[options] <vault-name> <key-name>",
              "filePath": "commands/arm/keyvault/keyvault.key.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                },
                {
                  "flags": "-k, --key-name <key-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--key-name",
                  "description": "the key name"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode (do not ask for delete confirmation)"
                }
              ]
            },
            {
              "name": "backup",
              "description": "Generates a protected backup of a vault key",
              "fullName": "keyvault key backup",
              "usage": "[options] <vault-name> <key-name> <output-file>",
              "filePath": "commands/arm/keyvault/keyvault.key.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                },
                {
                  "flags": "-k, --key-name <key-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--key-name",
                  "description": "the key name"
                },
                {
                  "flags": "-f, --output-file <output-file>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--output-file",
                  "description": "name of the binary file that will contain backup data"
                }
              ]
            },
            {
              "name": "restore",
              "description": "Restores a backed up key to a vault",
              "fullName": "keyvault key restore",
              "usage": "[options] <vault-name> <input-file>",
              "filePath": "commands/arm/keyvault/keyvault.key.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                },
                {
                  "flags": "-f, --input-file <input-file>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--input-file",
                  "description": "name of the binary file that contains backup data"
                }
              ]
            }
          ],
          "categories": {}
        },
        "secret": {
          "name": "secret",
          "description": "Commands to manage secrets in the Azure Key Vault service",
          "fullName": "keyvault secret",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "Lists secrets of a vault",
              "fullName": "keyvault secret list",
              "usage": "[options] <vault-name>",
              "filePath": "commands/arm/keyvault/keyvault.secret.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                }
              ]
            },
            {
              "name": "list-versions",
              "description": "Lists secret versions",
              "fullName": "keyvault secret list-versions",
              "usage": "[options] <vault-name> [secret-name]",
              "filePath": "commands/arm/keyvault/keyvault.secret.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                },
                {
                  "flags": "-s, --secret-name <secret-name>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--secret-name",
                  "description": "lists only versions of this secret"
                }
              ]
            },
            {
              "name": "set",
              "description": "Stores a secret on the vault",
              "fullName": "keyvault secret set",
              "usage": "options <vault-name> <secret-name>",
              "filePath": "commands/arm/keyvault/keyvault.secret.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                },
                {
                  "flags": "-s, --secret-name <secret-name>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--secret-name",
                  "description": "name of the secret to be created; if already exists, a new secret version is created"
                },
                {
                  "flags": "-w, --value <secret-value>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-w",
                  "long": "--value",
                  "description": "the secret value to be uploaded, expressed as an arbitrary sequence of characters; cannot be used along with --json-value or --file flags"
                },
                {
                  "flags": "--json-value <JSON-string>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--json-value",
                  "description": "the secret value to be uploaded, expressed as a JSON string; cannot be used along with --value or --file flags"
                },
                {
                  "flags": "--file <file-name>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--file",
                  "description": "the file that contains the secret value to be uploaded; cannot be used along with the --value or --json-value flag"
                },
                {
                  "flags": "--file-encoding <encoding>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--file-encoding",
                  "description": "for text files, specifies encoding used on the file; valid values: [utf8, utf16le, ucs2, ascii]; default is utf8"
                },
                {
                  "flags": "--encode-binary <encoding>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--encode-binary",
                  "description": "tells the file is binary and encodes it before uploading; valid values: [base64, hex]"
                },
                {
                  "flags": "-c, --content-type <content-type>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--content-type",
                  "description": "the content type"
                },
                {
                  "flags": "--enabled <boolean>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "long": "--enabled",
                  "description": "tells if the secret should be enabled; valid values: [false, true]; default is true"
                },
                {
                  "flags": "-e, --expires <datetime>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--expires",
                  "description": "expiration time of secret, expressed in RFC-1123/ISO8601 date format"
                },
                {
                  "flags": "-n, --not-before <datetime>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--not-before",
                  "description": "time before which secret cannot be used, expressed in RFC-1123/ISO8601 date format"
                },
                {
                  "flags": "-t, --tags <tags>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "Tags to set on the secret. Can be multiple in the format 'name=value'. Name is required and value is optional. For example, -t tag1=value1;tag2"
                }
              ]
            },
            {
              "name": "set-attributes",
              "description": "Changes attributes of an existing secret",
              "fullName": "keyvault secret set-attributes",
              "usage": "[options] <vault-name> <secret-name> [secret-version]",
              "filePath": "commands/arm/keyvault/keyvault.secret.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                },
                {
                  "flags": "-s, --secret-name <secret-name>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--secret-name",
                  "description": "name of the secret to be modified"
                },
                {
                  "flags": "-r, --secret-version <secret-version>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--secret-version",
                  "description": "the version to be modified; if omited, modifies only the most recent"
                },
                {
                  "flags": "-c, --content-type <content-type>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--content-type",
                  "description": "the content type"
                },
                {
                  "flags": "--enabled <boolean>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "long": "--enabled",
                  "description": "if informed, command will change the enabled state; valid values: [false, true]"
                },
                {
                  "flags": "-e, --expires <datetime>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--expires",
                  "description": "if informed, command will change secret expiration time; expressed in RFC-1123/ISO8601 date format, or null to clear the value"
                },
                {
                  "flags": "-n, --not-before <datetime>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--not-before",
                  "description": "if informed, command will change time before which secret cannot be used; expressed in RFC-1123/ISO8601 date format, or null to clear the value"
                },
                {
                  "flags": "-t, --tags <tags>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "Tags to set on the secret. Can be multiple in the format 'name=value'. Name is required and value is optional. For example, -t tag1=value1;tag2"
                },
                {
                  "flags": "--reset-tags",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--reset-tags",
                  "description": "remove previously existing tags; can combined with --tags"
                }
              ]
            },
            {
              "name": "show",
              "description": "Shows a vault secret",
              "fullName": "keyvault secret show",
              "usage": "[options] <vault-name> <secret-name> [secret-version]",
              "filePath": "commands/arm/keyvault/keyvault.secret.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                },
                {
                  "flags": "-s, --secret-name <secret-name>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--secret-name",
                  "description": "the secret name"
                },
                {
                  "flags": "-r, --secret-version <secret-version>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--secret-version",
                  "description": "the secret version; if omited, uses the most recent"
                }
              ]
            },
            {
              "name": "get",
              "description": "Downloads a secret from the vault",
              "fullName": "keyvault secret get",
              "usage": "[options] <vault-name> <secret-name> [secret-version] <file>",
              "filePath": "commands/arm/keyvault/keyvault.secret.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                },
                {
                  "flags": "-s, --secret-name <secret-name>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--secret-name",
                  "description": "the secret name"
                },
                {
                  "flags": "-r, --secret-version <secret-version>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--secret-version",
                  "description": "the secret version; if omited, uses the most recent"
                },
                {
                  "flags": "--file <file-name>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--file",
                  "description": "the file to receive secret contents; the file must not exist otherwise the command fails"
                },
                {
                  "flags": "--file-encoding <encoding>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--file-encoding",
                  "description": "specifies how to encode the secret contents in the file; valid values: [utf8, utf16le, ucs2, ascii]; default is utf8"
                },
                {
                  "flags": "--decode-binary <encoding>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--decode-binary",
                  "description": "tells to write a binary file by decoding secret contents with the informed encoding; valid values: [base64, hex]"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Deletes a secret from the vault",
              "fullName": "keyvault secret delete",
              "usage": "[options] <vault-name> <secret-name>",
              "filePath": "commands/arm/keyvault/keyvault.secret.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-u, --vault-name <vault-name>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--vault-name",
                  "description": "the vault name"
                },
                {
                  "flags": "-s, --secret-name <secret-name>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--secret-name",
                  "description": "the secret name"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode (do not ask for delete confirmation)"
                }
              ]
            }
          ],
          "categories": {}
        }
      }
    },
    "location": {
      "name": "location",
      "description": "Commands to get the available locations",
      "fullName": "location",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "list",
          "description": "list the available locations",
          "fullName": "location list",
          "usage": "[options]",
          "filePath": "commands/arm/location/location.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "the subscription identifier"
            },
            {
              "flags": "--details",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--details",
              "description": "shows full provider list with latitude and longitude"
            }
          ]
        }
      ],
      "categories": {}
    },
    "network": {
      "name": "network",
      "description": "Commands to manage network resources",
      "fullName": "network",
      "usage": "[options]",
      "options": [],
      "commands": [],
      "categories": {
        "application-gateway": {
          "name": "application-gateway",
          "description": "Commands to manage application gateways",
          "fullName": "network application-gateway",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "delete",
              "description": "Delete an application gateway",
              "fullName": "network application-gateway delete",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/applicationGateways.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the application gateway"
                },
                {
                  "flags": "--nowait",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--nowait",
                  "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode, do not ask for delete confirmation"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show an application gateway",
              "fullName": "network application-gateway show",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/applicationGateways.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the application gateway"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list",
              "description": "List application gateways",
              "fullName": "network application-gateway list",
              "usage": "[options] <resource-group>",
              "filePath": "commands/arm/network.generated/applicationGateways.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group [resource-group]",
                  "required": 0,
                  "optional": -22,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "start",
              "description": "Perform start operation on an application gateway",
              "fullName": "network application-gateway start",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/applicationGateways.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the application gateway"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "stop",
              "description": "Perform stop operation on an application gateway",
              "fullName": "network application-gateway stop",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/applicationGateways.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the application gateway"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "create",
              "description": "Create an application gateway",
              "fullName": "network application-gateway create",
              "usage": "[options] <resource-group> <name> <location> <servers>",
              "filePath": "commands/arm/network/network.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the application gateway"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-e, --vnet-name [vnet-name]",
                  "required": 0,
                  "optional": -17,
                  "bool": true,
                  "short": "-e",
                  "long": "--vnet-name",
                  "description": "the name of the virtual network application gateway should be deployed in"
                },
                {
                  "flags": "-m, --subnet-name [subnet-name]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-m",
                  "long": "--subnet-name",
                  "description": "the name of subnet in the virtual network identified by --vnet-name"
                },
                {
                  "flags": "-d, --subnet-id [subnet-id]",
                  "required": 0,
                  "optional": -17,
                  "bool": true,
                  "short": "-d",
                  "long": "--subnet-id",
                  "description": "the subnet identifier.\n     e.g. /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/VirtualNetworks/<vnet-name>/subnets/<subnet-name>"
                },
                {
                  "flags": "-y, --cert-file [cert-file]",
                  "required": 0,
                  "optional": -17,
                  "bool": true,
                  "short": "-y",
                  "long": "--cert-file",
                  "description": "the path to the certificate"
                },
                {
                  "flags": "-x, --cert-password [cert-password]",
                  "required": 0,
                  "optional": -21,
                  "bool": true,
                  "short": "-x",
                  "long": "--cert-password",
                  "description": "the certificate password"
                },
                {
                  "flags": "-A, --address-pool-name [address-pool-name]",
                  "required": 0,
                  "optional": -25,
                  "bool": true,
                  "short": "-A",
                  "long": "--address-pool-name",
                  "description": "the address pool name. \n     Default value is \"pool01\""
                },
                {
                  "flags": "-r, --servers <servers>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--servers",
                  "description": "comma separated list of IP addresses or DNS names corresponding to backend servers"
                },
                {
                  "flags": "-O, --http-settings-name [http-settings-name]",
                  "required": 0,
                  "optional": -26,
                  "bool": true,
                  "short": "-O",
                  "long": "--http-settings-name",
                  "description": "the HTTP settings name. \n     Default value is \"httpSettings01\""
                },
                {
                  "flags": "-i, --http-settings-protocol [http-settings-protocol]",
                  "required": 0,
                  "optional": -30,
                  "bool": true,
                  "short": "-i",
                  "long": "--http-settings-protocol",
                  "description": "the HTTP settings protocol, valid values are [http]"
                },
                {
                  "flags": "-o, --http-settings-port [http-settings-port]",
                  "required": 0,
                  "optional": -26,
                  "bool": true,
                  "short": "-o",
                  "long": "--http-settings-port",
                  "description": "the HTTP settings port, valid range is [0-65535]"
                },
                {
                  "flags": "-f, --http-settings-cookie-based-affinity [http-settings-cookie-based-affinity]",
                  "required": 0,
                  "optional": -43,
                  "bool": true,
                  "short": "-f",
                  "long": "--http-settings-cookie-based-affinity",
                  "description": "Enable or disable HTTP settings cookie based affinity, valid values are\n     [Disabled,Enabled],\n     default value is \"Disabled\""
                },
                {
                  "flags": "-J, --frontend-port-name [frontend-port-name]",
                  "required": 0,
                  "optional": -26,
                  "bool": true,
                  "short": "-J",
                  "long": "--frontend-port-name",
                  "description": "the frontend port name.\n     Default value is \"frontendPort01\""
                },
                {
                  "flags": "-j, --frontend-port [frontend-port]",
                  "required": 0,
                  "optional": -21,
                  "bool": true,
                  "short": "-j",
                  "long": "--frontend-port",
                  "description": "the frontend port value, valid range is [0-65535]"
                },
                {
                  "flags": "-F, --frontend-ip-name [frontend-ip-name]",
                  "required": 0,
                  "optional": -24,
                  "bool": true,
                  "short": "-F",
                  "long": "--frontend-ip-name",
                  "description": "the frontend ip name. \n     Default value is \"frontendIp01\""
                },
                {
                  "flags": "-k, --public-ip-name [public-ip-name]",
                  "required": 0,
                  "optional": -22,
                  "bool": true,
                  "short": "-k",
                  "long": "--public-ip-name",
                  "description": "the name of the public ip"
                },
                {
                  "flags": "-p, --public-ip-id [public-ip-id]",
                  "required": 0,
                  "optional": -20,
                  "bool": true,
                  "short": "-p",
                  "long": "--public-ip-id",
                  "description": "the public ip identifier.\n     e.g. /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/publicIPAddresses/<public-ip-name>"
                },
                {
                  "flags": "-G, --gateway-ip-name [gateway-ip-name]",
                  "required": 0,
                  "optional": -23,
                  "bool": true,
                  "short": "-G",
                  "long": "--gateway-ip-name",
                  "description": "the gateway ip name.\n     Default value is \"ipConfig01\""
                },
                {
                  "flags": "-L, --http-listener-name [http-listener-name]",
                  "required": 0,
                  "optional": -26,
                  "bool": true,
                  "short": "-L",
                  "long": "--http-listener-name",
                  "description": "the HTTP listener name.\n     Default value is \"listener01\""
                },
                {
                  "flags": "-b, --http-listener-protocol [http-listener-protocol]",
                  "required": 0,
                  "optional": -30,
                  "bool": true,
                  "short": "-b",
                  "long": "--http-listener-protocol",
                  "description": "the HTTP listener protocol, valid values are [http,https]"
                },
                {
                  "flags": "-R, --routing-rule-name [routing-rule-name]",
                  "required": 0,
                  "optional": -25,
                  "bool": true,
                  "short": "-R",
                  "long": "--routing-rule-name",
                  "description": "the routing rule name.\n     Default name is \"rule01\""
                },
                {
                  "flags": "-w, --routing-rule-type [routing-rule-type]",
                  "required": 0,
                  "optional": -25,
                  "bool": true,
                  "short": "-w",
                  "long": "--routing-rule-type",
                  "description": "the request routing rule type, default is \"Basic\""
                },
                {
                  "flags": "-a, --sku-name [sku-name]",
                  "required": 0,
                  "optional": -16,
                  "bool": true,
                  "short": "-a",
                  "long": "--sku-name",
                  "description": "the name of the sku, valid values are [Standard_Medium,Standard_Small,Standard_Large,WAF_Medium,WAF_Large]. Default values is \"Standard_Medium\""
                },
                {
                  "flags": "-u, --sku-tier [sku-tier]",
                  "required": 0,
                  "optional": -16,
                  "bool": true,
                  "short": "-u",
                  "long": "--sku-tier",
                  "description": "the sku tier, valid values are [undefined]. Default values is \"Standard\""
                },
                {
                  "flags": "-z, --capacity [capacity]",
                  "required": 0,
                  "optional": -16,
                  "bool": true,
                  "short": "-z",
                  "long": "--capacity",
                  "description": "application gateway instance count in range [2,10]. Default value is 2."
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                },
                {
                  "flags": "--nowait",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--nowait",
                  "description": "does not wait for the operation to complete. Returns as soon as the intial request is received by the server."
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "set",
              "description": "Set an application gateway",
              "fullName": "network application-gateway set",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network/network.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the application gateway"
                },
                {
                  "flags": "-a, --sku-name [sku-name]",
                  "required": 0,
                  "optional": -16,
                  "bool": true,
                  "short": "-a",
                  "long": "--sku-name",
                  "description": "the name of the sku, valid values are [Standard_Medium,Standard_Small,Standard_Large,WAF_Medium,WAF_Large]"
                },
                {
                  "flags": "-u, --sku-tier [sku-tier]",
                  "required": 0,
                  "optional": -16,
                  "bool": true,
                  "short": "-u",
                  "long": "--sku-tier",
                  "description": "the sku tier, valid values are [Standard,WAF]"
                },
                {
                  "flags": "-z, --capacity [capacity]",
                  "required": 0,
                  "optional": -16,
                  "bool": true,
                  "short": "-z",
                  "long": "--capacity",
                  "description": "application gateway instance count in range [2,10]"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     Existing tag values will be replaced by the values specified.\n     For example, -t \"tag1=value1;tag2\""
                },
                {
                  "flags": "--nowait",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--nowait",
                  "description": "does not wait for the operation to complete. Returns as soon as the intial request is received by the server."
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {
            "auth-cert": {
              "name": "auth-cert",
              "description": "Commands to manage authentication certificates",
              "fullName": "network application-gateway auth-cert",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create an authentication certificate",
                  "fullName": "network application-gateway auth-cert create",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-authenticationCertificates.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the authentication certificate"
                    },
                    {
                      "flags": "-f, --cert-file [cert-file]",
                      "required": 0,
                      "optional": -17,
                      "bool": true,
                      "short": "-f",
                      "long": "--cert-file",
                      "description": "sets authentication certificates name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update an authentication certificate",
                  "fullName": "network application-gateway auth-cert set",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-authenticationCertificates.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the authentication certificate"
                    },
                    {
                      "flags": "-f, --cert-file [cert-file]",
                      "required": 0,
                      "optional": -17,
                      "bool": true,
                      "short": "-f",
                      "long": "--cert-file",
                      "description": "sets authentication certificates name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete an authentication certificate",
                  "fullName": "network application-gateway auth-cert delete",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-authenticationCertificates.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the authentication certificate"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show an authentication certificate",
                  "fullName": "network application-gateway auth-cert show",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-authenticationCertificates.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the authentication certificate"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List authentication certificates",
                  "fullName": "network application-gateway auth-cert list",
                  "usage": "[options] <resource-group> <gateway-name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-authenticationCertificates.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "address-pool": {
              "name": "address-pool",
              "description": "Commands to manage backend address pools",
              "fullName": "network application-gateway address-pool",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a backend address pool",
                  "fullName": "network application-gateway address-pool create",
                  "usage": "[options] <resource-group> <gateway-name> <name> <servers>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-backendAddressPools.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the backend address pool"
                    },
                    {
                      "flags": "-r, --servers <servers>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--servers",
                      "description": "backend addresses"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update a backend address pool",
                  "fullName": "network application-gateway address-pool set",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-backendAddressPools.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the backend address pool"
                    },
                    {
                      "flags": "-r, --servers [servers]",
                      "required": 0,
                      "optional": -15,
                      "bool": true,
                      "short": "-r",
                      "long": "--servers",
                      "description": "backend addresses"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a backend address pool",
                  "fullName": "network application-gateway address-pool delete",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-backendAddressPools.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the backend address pool"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a backend address pool",
                  "fullName": "network application-gateway address-pool show",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-backendAddressPools.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the backend address pool"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List backend address pools",
                  "fullName": "network application-gateway address-pool list",
                  "usage": "[options] <resource-group> <gateway-name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-backendAddressPools.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "http-settings": {
              "name": "http-settings",
              "description": "Commands to manage backend http settings collection",
              "fullName": "network application-gateway http-settings",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a backend http settings collection",
                  "fullName": "network application-gateway http-settings create",
                  "usage": "[options] <resource-group> <gateway-name> <name> <port>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-backendHttpSettingsCollection.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the backend http settings collection"
                    },
                    {
                      "flags": "-o, --port <port>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--port",
                      "description": "port"
                    },
                    {
                      "flags": "-p, --protocol [protocol]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-p",
                      "long": "--protocol",
                      "description": "protocol"
                    },
                    {
                      "flags": "-c, --cookie-based-affinity [cookie-based-affinity]",
                      "required": 0,
                      "optional": -29,
                      "bool": true,
                      "short": "-c",
                      "long": "--cookie-based-affinity",
                      "description": "cookie based affinity"
                    },
                    {
                      "flags": "-r, --probe-name [probe-name]",
                      "required": 0,
                      "optional": -18,
                      "bool": true,
                      "short": "-r",
                      "long": "--probe-name",
                      "description": "sets probe. This option is mutually\n     exclusive with --probe-id"
                    },
                    {
                      "flags": "-i, --probe-id [probe-id]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-i",
                      "long": "--probe-id",
                      "description": "sets probe. This option is mutually\n     exclusive with --probe-name"
                    },
                    {
                      "flags": "-m, --host-name [host-name]",
                      "required": 0,
                      "optional": -17,
                      "bool": true,
                      "short": "-m",
                      "long": "--host-name",
                      "description": "host header to be sent to the backend\n     servers"
                    },
                    {
                      "flags": "-k, --pick-host-name [pick-host-name]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-k",
                      "long": "--pick-host-name",
                      "description": "whether to pick host header should be\n     picked from the host name of the backend server. Default value is false"
                    },
                    {
                      "flags": "-a, --affinity-cookie-name [affinity-cookie-name]",
                      "required": 0,
                      "optional": -28,
                      "bool": true,
                      "short": "-a",
                      "long": "--affinity-cookie-name",
                      "description": "cookie name to use for the affinity\n     cookie"
                    },
                    {
                      "flags": "-e, --probe-enabled [probe-enabled]",
                      "required": 0,
                      "optional": -21,
                      "bool": true,
                      "short": "-e",
                      "long": "--probe-enabled",
                      "description": "whether the probe is enabled. Default\n     value is false"
                    },
                    {
                      "flags": "-d, --path [path]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-d",
                      "long": "--path",
                      "description": "path which should be used as a prefix\n     for all HTTP requests. Null means no path will be prefixed. Default value is\n     null"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update a backend http settings collection",
                  "fullName": "network application-gateway http-settings set",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-backendHttpSettingsCollection.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the backend http settings collection"
                    },
                    {
                      "flags": "-o, --port [port]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-o",
                      "long": "--port",
                      "description": "port"
                    },
                    {
                      "flags": "-p, --protocol [protocol]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-p",
                      "long": "--protocol",
                      "description": "protocol"
                    },
                    {
                      "flags": "-c, --cookie-based-affinity [cookie-based-affinity]",
                      "required": 0,
                      "optional": -29,
                      "bool": true,
                      "short": "-c",
                      "long": "--cookie-based-affinity",
                      "description": "cookie based affinity"
                    },
                    {
                      "flags": "-r, --probe-name [probe-name]",
                      "required": 0,
                      "optional": -18,
                      "bool": true,
                      "short": "-r",
                      "long": "--probe-name",
                      "description": "sets probe. This option is mutually\n     exclusive with --probe-id"
                    },
                    {
                      "flags": "-i, --probe-id [probe-id]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-i",
                      "long": "--probe-id",
                      "description": "sets probe. This option is mutually\n     exclusive with --probe-name"
                    },
                    {
                      "flags": "-m, --host-name [host-name]",
                      "required": 0,
                      "optional": -17,
                      "bool": true,
                      "short": "-m",
                      "long": "--host-name",
                      "description": "host header to be sent to the backend\n     servers"
                    },
                    {
                      "flags": "-k, --pick-host-name [pick-host-name]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-k",
                      "long": "--pick-host-name",
                      "description": "whether to pick host header should be\n     picked from the host name of the backend server. Default value is false"
                    },
                    {
                      "flags": "-a, --affinity-cookie-name [affinity-cookie-name]",
                      "required": 0,
                      "optional": -28,
                      "bool": true,
                      "short": "-a",
                      "long": "--affinity-cookie-name",
                      "description": "cookie name to use for the affinity\n     cookie"
                    },
                    {
                      "flags": "-e, --probe-enabled [probe-enabled]",
                      "required": 0,
                      "optional": -21,
                      "bool": true,
                      "short": "-e",
                      "long": "--probe-enabled",
                      "description": "whether the probe is enabled. Default\n     value is false"
                    },
                    {
                      "flags": "-d, --path [path]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-d",
                      "long": "--path",
                      "description": "path which should be used as a prefix\n     for all HTTP requests. Null means no path will be prefixed. Default value is\n     null"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a backend http settings collection",
                  "fullName": "network application-gateway http-settings delete",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-backendHttpSettingsCollection.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the backend http settings collection"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a backend http settings collection",
                  "fullName": "network application-gateway http-settings show",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-backendHttpSettingsCollection.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the backend http settings collection"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List backend http settings collections",
                  "fullName": "network application-gateway http-settings list",
                  "usage": "[options] <resource-group> <gateway-name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-backendHttpSettingsCollection.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "frontend-ip": {
              "name": "frontend-ip",
              "description": "Commands to manage frontend ip configurations",
              "fullName": "network application-gateway frontend-ip",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a frontend ip configuration",
                  "fullName": "network application-gateway frontend-ip create",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-frontendIPConfigurations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the frontend ip configuration"
                    },
                    {
                      "flags": "-a, --static-ip-address [static-ip-address]",
                      "required": 0,
                      "optional": -25,
                      "bool": true,
                      "short": "-a",
                      "long": "--static-ip-address",
                      "description": "privateIPAddress of the network\n     interface IP Configuration"
                    },
                    {
                      "flags": "-u, --subnet-name [subnet-name]",
                      "required": 0,
                      "optional": -19,
                      "bool": true,
                      "short": "-u",
                      "long": "--subnet-name",
                      "description": "sets subnet. This option is mutually\n     exclusive with --subnet-id"
                    },
                    {
                      "flags": "-e, --vnet-name [vnet-name]",
                      "required": 0,
                      "optional": -17,
                      "bool": true,
                      "short": "-e",
                      "long": "--vnet-name",
                      "description": "name of the virtual network that contains subnet"
                    },
                    {
                      "flags": "-i, --subnet-id [subnet-id]",
                      "required": 0,
                      "optional": -17,
                      "bool": true,
                      "short": "-i",
                      "long": "--subnet-id",
                      "description": "sets subnet. This option is mutually\n     exclusive with --subnet-name"
                    },
                    {
                      "flags": "-p, --public-ip-name [public-ip-name]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-p",
                      "long": "--public-ip-name",
                      "description": "sets public ip address. This option is\n     mutually exclusive with --public-ip-id"
                    },
                    {
                      "flags": "-r, --public-ip-id [public-ip-id]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-r",
                      "long": "--public-ip-id",
                      "description": "sets public ip address. This option is\n     mutually exclusive with --public-ip-name"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update a frontend ip configuration",
                  "fullName": "network application-gateway frontend-ip set",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-frontendIPConfigurations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the frontend ip configuration"
                    },
                    {
                      "flags": "-a, --static-ip-address [static-ip-address]",
                      "required": 0,
                      "optional": -25,
                      "bool": true,
                      "short": "-a",
                      "long": "--static-ip-address",
                      "description": "privateIPAddress of the network\n     interface IP Configuration"
                    },
                    {
                      "flags": "-u, --subnet-name [subnet-name]",
                      "required": 0,
                      "optional": -19,
                      "bool": true,
                      "short": "-u",
                      "long": "--subnet-name",
                      "description": "sets subnet. This option is mutually\n     exclusive with --subnet-id"
                    },
                    {
                      "flags": "-e, --vnet-name [vnet-name]",
                      "required": 0,
                      "optional": -17,
                      "bool": true,
                      "short": "-e",
                      "long": "--vnet-name",
                      "description": "name of the virtual network that contains subnet"
                    },
                    {
                      "flags": "-i, --subnet-id [subnet-id]",
                      "required": 0,
                      "optional": -17,
                      "bool": true,
                      "short": "-i",
                      "long": "--subnet-id",
                      "description": "sets subnet. This option is mutually\n     exclusive with --subnet-name"
                    },
                    {
                      "flags": "-p, --public-ip-name [public-ip-name]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-p",
                      "long": "--public-ip-name",
                      "description": "sets public ip address. This option is\n     mutually exclusive with --public-ip-id"
                    },
                    {
                      "flags": "-r, --public-ip-id [public-ip-id]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-r",
                      "long": "--public-ip-id",
                      "description": "sets public ip address. This option is\n     mutually exclusive with --public-ip-name"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a frontend ip configuration",
                  "fullName": "network application-gateway frontend-ip delete",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-frontendIPConfigurations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the frontend ip configuration"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a frontend ip configuration",
                  "fullName": "network application-gateway frontend-ip show",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-frontendIPConfigurations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the frontend ip configuration"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List frontend ip configurations",
                  "fullName": "network application-gateway frontend-ip list",
                  "usage": "[options] <resource-group> <gateway-name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-frontendIPConfigurations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "frontend-port": {
              "name": "frontend-port",
              "description": "Commands to manage frontend ports",
              "fullName": "network application-gateway frontend-port",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a frontend port",
                  "fullName": "network application-gateway frontend-port create",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-frontendPorts.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the frontend port"
                    },
                    {
                      "flags": "-p, --port [port]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-p",
                      "long": "--port",
                      "description": "frontend port"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update a frontend port",
                  "fullName": "network application-gateway frontend-port set",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-frontendPorts.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the frontend port"
                    },
                    {
                      "flags": "-p, --port [port]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-p",
                      "long": "--port",
                      "description": "frontend port"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a frontend port",
                  "fullName": "network application-gateway frontend-port delete",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-frontendPorts.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the frontend port"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a frontend port",
                  "fullName": "network application-gateway frontend-port show",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-frontendPorts.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the frontend port"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List frontend ports",
                  "fullName": "network application-gateway frontend-port list",
                  "usage": "[options] <resource-group> <gateway-name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-frontendPorts.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "http-listener": {
              "name": "http-listener",
              "description": "Commands to manage http listeners",
              "fullName": "network application-gateway http-listener",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a http listener",
                  "fullName": "network application-gateway http-listener create",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-httpListeners.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the http listener"
                    },
                    {
                      "flags": "-i, --frontend-ip-name [frontend-ip-name]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-i",
                      "long": "--frontend-ip-name",
                      "description": "sets frontend ip configuration. This\n     option is mutually exclusive with --frontend-ip-id"
                    },
                    {
                      "flags": "-d, --frontend-ip-id [frontend-ip-id]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-d",
                      "long": "--frontend-ip-id",
                      "description": "sets frontend ip configuration. This\n     option is mutually exclusive with --frontend-ip-name"
                    },
                    {
                      "flags": "-p, --frontend-port-name [frontend-port-name]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-p",
                      "long": "--frontend-port-name",
                      "description": "sets frontend port. This option is\n     mutually exclusive with --frontend-port-id"
                    },
                    {
                      "flags": "-e, --frontend-port-id [frontend-port-id]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-e",
                      "long": "--frontend-port-id",
                      "description": "sets frontend port. This option is\n     mutually exclusive with --frontend-port-name"
                    },
                    {
                      "flags": "-r, --protocol [protocol]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-r",
                      "long": "--protocol",
                      "description": "protocol"
                    },
                    {
                      "flags": "-o, --host-name [host-name]",
                      "required": 0,
                      "optional": -17,
                      "bool": true,
                      "short": "-o",
                      "long": "--host-name",
                      "description": "host name of HTTP listener"
                    },
                    {
                      "flags": "-c, --ssl-cert [ssl-cert]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-c",
                      "long": "--ssl-cert",
                      "description": "sets ssl certificate. This option is\n     mutually exclusive with --ssl-cert-id"
                    },
                    {
                      "flags": "-f, --ssl-cert-id [ssl-cert-id]",
                      "required": 0,
                      "optional": -19,
                      "bool": true,
                      "short": "-f",
                      "long": "--ssl-cert-id",
                      "description": "sets ssl certificate. This option is\n     mutually exclusive with --ssl-cert"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update a http listener",
                  "fullName": "network application-gateway http-listener set",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-httpListeners.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the http listener"
                    },
                    {
                      "flags": "-i, --frontend-ip-name [frontend-ip-name]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-i",
                      "long": "--frontend-ip-name",
                      "description": "sets frontend ip configuration. This\n     option is mutually exclusive with --frontend-ip-id"
                    },
                    {
                      "flags": "-d, --frontend-ip-id [frontend-ip-id]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-d",
                      "long": "--frontend-ip-id",
                      "description": "sets frontend ip configuration. This\n     option is mutually exclusive with --frontend-ip-name"
                    },
                    {
                      "flags": "-p, --frontend-port-name [frontend-port-name]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-p",
                      "long": "--frontend-port-name",
                      "description": "sets frontend port. This option is\n     mutually exclusive with --frontend-port-id"
                    },
                    {
                      "flags": "-e, --frontend-port-id [frontend-port-id]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-e",
                      "long": "--frontend-port-id",
                      "description": "sets frontend port. This option is\n     mutually exclusive with --frontend-port-name"
                    },
                    {
                      "flags": "-r, --protocol [protocol]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-r",
                      "long": "--protocol",
                      "description": "protocol"
                    },
                    {
                      "flags": "-o, --host-name [host-name]",
                      "required": 0,
                      "optional": -17,
                      "bool": true,
                      "short": "-o",
                      "long": "--host-name",
                      "description": "host name of HTTP listener"
                    },
                    {
                      "flags": "-c, --ssl-cert [ssl-cert]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-c",
                      "long": "--ssl-cert",
                      "description": "sets ssl certificate. This option is\n     mutually exclusive with --ssl-cert-id"
                    },
                    {
                      "flags": "-f, --ssl-cert-id [ssl-cert-id]",
                      "required": 0,
                      "optional": -19,
                      "bool": true,
                      "short": "-f",
                      "long": "--ssl-cert-id",
                      "description": "sets ssl certificate. This option is\n     mutually exclusive with --ssl-cert"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a http listener",
                  "fullName": "network application-gateway http-listener delete",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-httpListeners.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the http listener"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a http listener",
                  "fullName": "network application-gateway http-listener show",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-httpListeners.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the http listener"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List http listeners",
                  "fullName": "network application-gateway http-listener list",
                  "usage": "[options] <resource-group> <gateway-name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-httpListeners.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "probe": {
              "name": "probe",
              "description": "Commands to manage probes",
              "fullName": "network application-gateway probe",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a probe",
                  "fullName": "network application-gateway probe create",
                  "usage": "[options] <resource-group> <gateway-name> <name> <path> <timeout>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-probes.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the probe"
                    },
                    {
                      "flags": "-p, --protocol [protocol]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-p",
                      "long": "--protocol",
                      "description": "protocol"
                    },
                    {
                      "flags": "-d, --host-name [host-name]",
                      "required": 0,
                      "optional": -17,
                      "bool": true,
                      "short": "-d",
                      "long": "--host-name",
                      "description": "host name to send the probe to"
                    },
                    {
                      "flags": "-f, --path <path>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--path",
                      "description": "relative path of probe. Valid path\n     starts from '/'. Probe is sent to <Protocol>://<host>:<port><path>"
                    },
                    {
                      "flags": "-i, --interval [interval]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-i",
                      "long": "--interval",
                      "description": "the probing interval in seconds. This\n     is the time interval between two consecutive probes. Acceptable values are from\n     1 second to 86400 seconds"
                    },
                    {
                      "flags": "-u, --timeout <timeout>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--timeout",
                      "description": "the probe timeout in seconds. Probe\n     marked as failed if valid response is not received with this timeout period.\n     Acceptable values are from 1 second to 86400 seconds"
                    },
                    {
                      "flags": "-e, --unhealthy-threshold [unhealthy-threshold]",
                      "required": 0,
                      "optional": -27,
                      "bool": true,
                      "short": "-e",
                      "long": "--unhealthy-threshold",
                      "description": "the probe retry count. Backend server\n     is marked down after consecutive probe failure count reaches\n     UnhealthyThreshold. Acceptable values are from 1 second to 20"
                    },
                    {
                      "flags": "-o, --pick-host-name [pick-host-name]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-o",
                      "long": "--pick-host-name",
                      "description": "whether the host header should be\n     picked from the backend http settings. Default value is false"
                    },
                    {
                      "flags": "-m, --min-servers [min-servers]",
                      "required": 0,
                      "optional": -19,
                      "bool": true,
                      "short": "-m",
                      "long": "--min-servers",
                      "description": "minimum number of servers that are\n     always marked healthy. Default value is 0"
                    },
                    {
                      "flags": "-r, --health-response-body [health-response-body]",
                      "required": 0,
                      "optional": -28,
                      "bool": true,
                      "short": "-r",
                      "long": "--health-response-body",
                      "description": "health response body option value"
                    },
                    {
                      "flags": "-c, --status-codes [status-codes]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-c",
                      "long": "--status-codes",
                      "description": "status codes option value"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update a probe",
                  "fullName": "network application-gateway probe set",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-probes.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the probe"
                    },
                    {
                      "flags": "-p, --protocol [protocol]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-p",
                      "long": "--protocol",
                      "description": "protocol"
                    },
                    {
                      "flags": "-d, --host-name [host-name]",
                      "required": 0,
                      "optional": -17,
                      "bool": true,
                      "short": "-d",
                      "long": "--host-name",
                      "description": "host name to send the probe to"
                    },
                    {
                      "flags": "-f, --path [path]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-f",
                      "long": "--path",
                      "description": "relative path of probe. Valid path\n     starts from '/'. Probe is sent to <Protocol>://<host>:<port><path>"
                    },
                    {
                      "flags": "-i, --interval [interval]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-i",
                      "long": "--interval",
                      "description": "the probing interval in seconds. This\n     is the time interval between two consecutive probes. Acceptable values are from\n     1 second to 86400 seconds"
                    },
                    {
                      "flags": "-u, --timeout [timeout]",
                      "required": 0,
                      "optional": -15,
                      "bool": true,
                      "short": "-u",
                      "long": "--timeout",
                      "description": "the probe timeout in seconds. Probe\n     marked as failed if valid response is not received with this timeout period.\n     Acceptable values are from 1 second to 86400 seconds"
                    },
                    {
                      "flags": "-e, --unhealthy-threshold [unhealthy-threshold]",
                      "required": 0,
                      "optional": -27,
                      "bool": true,
                      "short": "-e",
                      "long": "--unhealthy-threshold",
                      "description": "the probe retry count. Backend server\n     is marked down after consecutive probe failure count reaches\n     UnhealthyThreshold. Acceptable values are from 1 second to 20"
                    },
                    {
                      "flags": "-o, --pick-host-name [pick-host-name]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-o",
                      "long": "--pick-host-name",
                      "description": "whether the host header should be\n     picked from the backend http settings. Default value is false"
                    },
                    {
                      "flags": "-m, --min-servers [min-servers]",
                      "required": 0,
                      "optional": -19,
                      "bool": true,
                      "short": "-m",
                      "long": "--min-servers",
                      "description": "minimum number of servers that are\n     always marked healthy. Default value is 0"
                    },
                    {
                      "flags": "-r, --health-response-body [health-response-body]",
                      "required": 0,
                      "optional": -28,
                      "bool": true,
                      "short": "-r",
                      "long": "--health-response-body",
                      "description": "health response body option value"
                    },
                    {
                      "flags": "-c, --status-codes [status-codes]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-c",
                      "long": "--status-codes",
                      "description": "status codes option value"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a probe",
                  "fullName": "network application-gateway probe delete",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-probes.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the probe"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a probe",
                  "fullName": "network application-gateway probe show",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-probes.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the probe"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List probes",
                  "fullName": "network application-gateway probe list",
                  "usage": "[options] <resource-group> <gateway-name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-probes.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "redirect-config": {
              "name": "redirect-config",
              "description": "Commands to manage redirect configurations",
              "fullName": "network application-gateway redirect-config",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a redirect configuration",
                  "fullName": "network application-gateway redirect-config create",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-redirectConfigurations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the redirect configuration"
                    },
                    {
                      "flags": "-r, --redirect-type [redirect-type]",
                      "required": 0,
                      "optional": -21,
                      "bool": true,
                      "short": "-r",
                      "long": "--redirect-type",
                      "description": "supported http redirection types -\n     Permanent, Temporary, Found, SeeOther"
                    },
                    {
                      "flags": "-d, --target-listener-id [target-listener-id]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-d",
                      "long": "--target-listener-id",
                      "description": "sets target listener."
                    },
                    {
                      "flags": "-p, --include-path [include-path]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-p",
                      "long": "--include-path",
                      "description": "include path in the redirected url"
                    },
                    {
                      "flags": "-u, --target-url [target-url]",
                      "required": 0,
                      "optional": -18,
                      "bool": true,
                      "short": "-u",
                      "long": "--target-url",
                      "description": "url to redirect the request to"
                    },
                    {
                      "flags": "-i, --include-query-string [include-query-string]",
                      "required": 0,
                      "optional": -28,
                      "bool": true,
                      "short": "-i",
                      "long": "--include-query-string",
                      "description": "include query string in the redirected\n     url"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update a redirect configuration",
                  "fullName": "network application-gateway redirect-config set",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-redirectConfigurations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the redirect configuration"
                    },
                    {
                      "flags": "-r, --redirect-type [redirect-type]",
                      "required": 0,
                      "optional": -21,
                      "bool": true,
                      "short": "-r",
                      "long": "--redirect-type",
                      "description": "supported http redirection types -\n     Permanent, Temporary, Found, SeeOther"
                    },
                    {
                      "flags": "-d, --target-listener-id [target-listener-id]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-d",
                      "long": "--target-listener-id",
                      "description": "sets target listener."
                    },
                    {
                      "flags": "-p, --include-path [include-path]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-p",
                      "long": "--include-path",
                      "description": "include path in the redirected url"
                    },
                    {
                      "flags": "-u, --target-url [target-url]",
                      "required": 0,
                      "optional": -18,
                      "bool": true,
                      "short": "-u",
                      "long": "--target-url",
                      "description": "url to redirect the request to"
                    },
                    {
                      "flags": "-i, --include-query-string [include-query-string]",
                      "required": 0,
                      "optional": -28,
                      "bool": true,
                      "short": "-i",
                      "long": "--include-query-string",
                      "description": "include query string in the redirected\n     url"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a redirect configuration",
                  "fullName": "network application-gateway redirect-config delete",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-redirectConfigurations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the redirect configuration"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a redirect configuration",
                  "fullName": "network application-gateway redirect-config show",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-redirectConfigurations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the redirect configuration"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List redirect configurations",
                  "fullName": "network application-gateway redirect-config list",
                  "usage": "[options] <resource-group> <gateway-name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-redirectConfigurations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "rule": {
              "name": "rule",
              "description": "Commands to manage request routing rules",
              "fullName": "network application-gateway rule",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a request routing rule",
                  "fullName": "network application-gateway rule create",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-requestRoutingRules.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the request routing rule"
                    },
                    {
                      "flags": "-t, --type [type]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-t",
                      "long": "--type",
                      "description": "rule type"
                    },
                    {
                      "flags": "-p, --address-pool-name [address-pool-name]",
                      "required": 0,
                      "optional": -25,
                      "bool": true,
                      "short": "-p",
                      "long": "--address-pool-name",
                      "description": "sets backend address pool. This option\n     is mutually exclusive with --address-pool-id"
                    },
                    {
                      "flags": "-a, --address-pool-id [address-pool-id]",
                      "required": 0,
                      "optional": -23,
                      "bool": true,
                      "short": "-a",
                      "long": "--address-pool-id",
                      "description": "sets backend address pool. This option\n     is mutually exclusive with --address-pool-name"
                    },
                    {
                      "flags": "-i, --http-settings-name [http-settings-name]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-i",
                      "long": "--http-settings-name",
                      "description": "sets backend http settings. This option\n     is mutually exclusive with --http-settings-id"
                    },
                    {
                      "flags": "-e, --http-settings-id [http-settings-id]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-e",
                      "long": "--http-settings-id",
                      "description": "sets backend http settings. This option\n     is mutually exclusive with --http-settings-name"
                    },
                    {
                      "flags": "-l, --http-listener-name [http-listener-name]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-l",
                      "long": "--http-listener-name",
                      "description": "sets http listener. This option is\n     mutually exclusive with --http-listener-id"
                    },
                    {
                      "flags": "-r, --http-listener-id [http-listener-id]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-r",
                      "long": "--http-listener-id",
                      "description": "sets http listener. This option is\n     mutually exclusive with --http-listener-name"
                    },
                    {
                      "flags": "-u, --url-path-map-name [url-path-map-name]",
                      "required": 0,
                      "optional": -25,
                      "bool": true,
                      "short": "-u",
                      "long": "--url-path-map-name",
                      "description": "sets url path map. This option is\n     mutually exclusive with --url-path-map-id"
                    },
                    {
                      "flags": "-m, --url-path-map-id [url-path-map-id]",
                      "required": 0,
                      "optional": -23,
                      "bool": true,
                      "short": "-m",
                      "long": "--url-path-map-id",
                      "description": "sets url path map. This option is\n     mutually exclusive with --url-path-map-name"
                    },
                    {
                      "flags": "-b, --redirect-configuration-name [redirect-configuration-name]",
                      "required": 0,
                      "optional": -35,
                      "bool": true,
                      "short": "-b",
                      "long": "--redirect-configuration-name",
                      "description": "sets redirect configuration. This\n     option is mutually exclusive with --redirect-configuration-id"
                    },
                    {
                      "flags": "-c, --redirect-configuration-id [redirect-configuration-id]",
                      "required": 0,
                      "optional": -33,
                      "bool": true,
                      "short": "-c",
                      "long": "--redirect-configuration-id",
                      "description": "sets redirect configuration. This\n     option is mutually exclusive with --redirect-configuration-name"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update a request routing rule",
                  "fullName": "network application-gateway rule set",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-requestRoutingRules.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the request routing rule"
                    },
                    {
                      "flags": "-t, --type [type]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-t",
                      "long": "--type",
                      "description": "rule type"
                    },
                    {
                      "flags": "-p, --address-pool-name [address-pool-name]",
                      "required": 0,
                      "optional": -25,
                      "bool": true,
                      "short": "-p",
                      "long": "--address-pool-name",
                      "description": "sets backend address pool. This option\n     is mutually exclusive with --address-pool-id"
                    },
                    {
                      "flags": "-a, --address-pool-id [address-pool-id]",
                      "required": 0,
                      "optional": -23,
                      "bool": true,
                      "short": "-a",
                      "long": "--address-pool-id",
                      "description": "sets backend address pool. This option\n     is mutually exclusive with --address-pool-name"
                    },
                    {
                      "flags": "-i, --http-settings-name [http-settings-name]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-i",
                      "long": "--http-settings-name",
                      "description": "sets backend http settings. This option\n     is mutually exclusive with --http-settings-id"
                    },
                    {
                      "flags": "-e, --http-settings-id [http-settings-id]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-e",
                      "long": "--http-settings-id",
                      "description": "sets backend http settings. This option\n     is mutually exclusive with --http-settings-name"
                    },
                    {
                      "flags": "-l, --http-listener-name [http-listener-name]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-l",
                      "long": "--http-listener-name",
                      "description": "sets http listener. This option is\n     mutually exclusive with --http-listener-id"
                    },
                    {
                      "flags": "-r, --http-listener-id [http-listener-id]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-r",
                      "long": "--http-listener-id",
                      "description": "sets http listener. This option is\n     mutually exclusive with --http-listener-name"
                    },
                    {
                      "flags": "-u, --url-path-map-name [url-path-map-name]",
                      "required": 0,
                      "optional": -25,
                      "bool": true,
                      "short": "-u",
                      "long": "--url-path-map-name",
                      "description": "sets url path map. This option is\n     mutually exclusive with --url-path-map-id"
                    },
                    {
                      "flags": "-m, --url-path-map-id [url-path-map-id]",
                      "required": 0,
                      "optional": -23,
                      "bool": true,
                      "short": "-m",
                      "long": "--url-path-map-id",
                      "description": "sets url path map. This option is\n     mutually exclusive with --url-path-map-name"
                    },
                    {
                      "flags": "-b, --redirect-configuration-name [redirect-configuration-name]",
                      "required": 0,
                      "optional": -35,
                      "bool": true,
                      "short": "-b",
                      "long": "--redirect-configuration-name",
                      "description": "sets redirect configuration. This\n     option is mutually exclusive with --redirect-configuration-id"
                    },
                    {
                      "flags": "-c, --redirect-configuration-id [redirect-configuration-id]",
                      "required": 0,
                      "optional": -33,
                      "bool": true,
                      "short": "-c",
                      "long": "--redirect-configuration-id",
                      "description": "sets redirect configuration. This\n     option is mutually exclusive with --redirect-configuration-name"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a request routing rule",
                  "fullName": "network application-gateway rule delete",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-requestRoutingRules.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the request routing rule"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a request routing rule",
                  "fullName": "network application-gateway rule show",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-requestRoutingRules.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the request routing rule"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List request routing rules",
                  "fullName": "network application-gateway rule list",
                  "usage": "[options] <resource-group> <gateway-name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-requestRoutingRules.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "ssl-cert": {
              "name": "ssl-cert",
              "description": "Commands to manage ssl certificates",
              "fullName": "network application-gateway ssl-cert",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a ssl certificate",
                  "fullName": "network application-gateway ssl-cert create",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-sslCertificates.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the ssl certificate"
                    },
                    {
                      "flags": "-p, --cert-password [cert-password]",
                      "required": 0,
                      "optional": -21,
                      "bool": true,
                      "short": "-p",
                      "long": "--cert-password",
                      "description": "password for the pfx file specified in\n     data. Only applicable in PUT request"
                    },
                    {
                      "flags": "-f, --cert-file [cert-file]",
                      "required": 0,
                      "optional": -17,
                      "bool": true,
                      "short": "-f",
                      "long": "--cert-file",
                      "description": "sets ssl certificates name"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update a ssl certificate",
                  "fullName": "network application-gateway ssl-cert set",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-sslCertificates.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the ssl certificate"
                    },
                    {
                      "flags": "-p, --cert-password [cert-password]",
                      "required": 0,
                      "optional": -21,
                      "bool": true,
                      "short": "-p",
                      "long": "--cert-password",
                      "description": "password for the pfx file specified in\n     data. Only applicable in PUT request"
                    },
                    {
                      "flags": "-f, --cert-file [cert-file]",
                      "required": 0,
                      "optional": -17,
                      "bool": true,
                      "short": "-f",
                      "long": "--cert-file",
                      "description": "sets ssl certificates name"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a ssl certificate",
                  "fullName": "network application-gateway ssl-cert delete",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-sslCertificates.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the ssl certificate"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a ssl certificate",
                  "fullName": "network application-gateway ssl-cert show",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-sslCertificates.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the ssl certificate"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List ssl certificates",
                  "fullName": "network application-gateway ssl-cert list",
                  "usage": "[options] <resource-group> <gateway-name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-sslCertificates.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "ssl-policy": {
              "name": "ssl-policy",
              "description": "Commands to manage ssl policies",
              "fullName": "network application-gateway ssl-policy",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a ssl policy",
                  "fullName": "network application-gateway ssl-policy create",
                  "usage": "[options] <resource-group> <gateway-name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-sslPolicy.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-d, --disable-ssl-protocols [disable-ssl-protocols]",
                      "required": 0,
                      "optional": -29,
                      "bool": true,
                      "short": "-d",
                      "long": "--disable-ssl-protocols",
                      "description": "ssl protocols to be disabled on\n     application gateway"
                    },
                    {
                      "flags": "-p, --policy-type [policy-type]",
                      "required": 0,
                      "optional": -19,
                      "bool": true,
                      "short": "-p",
                      "long": "--policy-type",
                      "description": "type of Ssl Policy"
                    },
                    {
                      "flags": "-r, --policy-name [policy-name]",
                      "required": 0,
                      "optional": -19,
                      "bool": true,
                      "short": "-r",
                      "long": "--policy-name",
                      "description": "name of Ssl predefined policy"
                    },
                    {
                      "flags": "-c, --cipher-suites [cipher-suites]",
                      "required": 0,
                      "optional": -21,
                      "bool": true,
                      "short": "-c",
                      "long": "--cipher-suites",
                      "description": "ssl cipher suites to be enabled in the\n     specified order to application gateway"
                    },
                    {
                      "flags": "-m, --min-protocol-version [min-protocol-version]",
                      "required": 0,
                      "optional": -28,
                      "bool": true,
                      "short": "-m",
                      "long": "--min-protocol-version",
                      "description": "minimum version of Ssl protocol to be\n     supported on application gateway"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update a ssl policy",
                  "fullName": "network application-gateway ssl-policy set",
                  "usage": "[options] <resource-group> <gateway-name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-sslPolicy.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-d, --disable-ssl-protocols [disable-ssl-protocols]",
                      "required": 0,
                      "optional": -29,
                      "bool": true,
                      "short": "-d",
                      "long": "--disable-ssl-protocols",
                      "description": "ssl protocols to be disabled on\n     application gateway"
                    },
                    {
                      "flags": "-p, --policy-type [policy-type]",
                      "required": 0,
                      "optional": -19,
                      "bool": true,
                      "short": "-p",
                      "long": "--policy-type",
                      "description": "type of Ssl Policy"
                    },
                    {
                      "flags": "-r, --policy-name [policy-name]",
                      "required": 0,
                      "optional": -19,
                      "bool": true,
                      "short": "-r",
                      "long": "--policy-name",
                      "description": "name of Ssl predefined policy"
                    },
                    {
                      "flags": "-c, --cipher-suites [cipher-suites]",
                      "required": 0,
                      "optional": -21,
                      "bool": true,
                      "short": "-c",
                      "long": "--cipher-suites",
                      "description": "ssl cipher suites to be enabled in the\n     specified order to application gateway"
                    },
                    {
                      "flags": "-m, --min-protocol-version [min-protocol-version]",
                      "required": 0,
                      "optional": -28,
                      "bool": true,
                      "short": "-m",
                      "long": "--min-protocol-version",
                      "description": "minimum version of Ssl protocol to be\n     supported on application gateway"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a ssl policy",
                  "fullName": "network application-gateway ssl-policy delete",
                  "usage": "[options] <resource-group> <gateway-name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-sslPolicy.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a ssl policy",
                  "fullName": "network application-gateway ssl-policy show",
                  "usage": "[options] <resource-group> <gateway-name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-sslPolicy.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List ssl policies",
                  "fullName": "network application-gateway ssl-policy list",
                  "usage": "[options] <resource-group> <gateway-name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-sslPolicy.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list-available",
                  "description": "Lists available Ssl options for configuring Ssl policy",
                  "fullName": "network application-gateway ssl-policy list-available",
                  "usage": "[options]",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {
                "predefined": {
                  "name": "predefined",
                  "description": "Commands to manage ssl predefined policies",
                  "fullName": "network application-gateway ssl-policy predefined",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "show",
                      "description": "Gets Ssl predefined policy with the specified policy name",
                      "fullName": "network application-gateway ssl-policy predefined show",
                      "usage": "[options] <name>",
                      "filePath": "commands/arm/network/network.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-n, --name <name>",
                          "required": -12,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--name",
                          "description": "the name of the Ssl predefined policy"
                        },
                        {
                          "flags": "-s, --subscription <subscription>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    },
                    {
                      "name": "list",
                      "description": "Lists all SSL predefined policies for configuring Ssl policy",
                      "fullName": "network application-gateway ssl-policy predefined list",
                      "usage": "[options]",
                      "filePath": "commands/arm/network/network.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-s, --subscription <subscription>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    }
                  ],
                  "categories": {}
                }
              }
            },
            "url-path-map": {
              "name": "url-path-map",
              "description": "Commands to manage application gateway url path maps",
              "fullName": "network application-gateway url-path-map",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create an url path map",
                  "fullName": "network application-gateway url-path-map create",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-urlPathMaps.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the url path map"
                    },
                    {
                      "flags": "-b, --default-redirect-configuration-name [default-redirect-configuration-name]",
                      "required": 0,
                      "optional": -43,
                      "bool": true,
                      "short": "-b",
                      "long": "--default-redirect-configuration-name",
                      "description": "sets default redirect configuration.\n     This option is mutually exclusive with --default-redirect-configuration-id"
                    },
                    {
                      "flags": "-c, --default-redirect-configuration-id [default-redirect-configuration-id]",
                      "required": 0,
                      "optional": -41,
                      "bool": true,
                      "short": "-c",
                      "long": "--default-redirect-configuration-id",
                      "description": "sets default redirect configuration.\n     This option is mutually exclusive with --default-redirect-configuration-name"
                    },
                    {
                      "flags": "-p, --path [path]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-p",
                      "long": "--path",
                      "description": "path rules of URL path map"
                    },
                    {
                      "flags": "-a, --address-pool-name [address-pool-name]",
                      "required": 0,
                      "optional": -25,
                      "bool": true,
                      "short": "-a",
                      "long": "--address-pool-name",
                      "description": "sets backend address pool. This option\n     is mutually exclusive with --address-pool-id"
                    },
                    {
                      "flags": "-o, --address-pool-id [address-pool-id]",
                      "required": 0,
                      "optional": -23,
                      "bool": true,
                      "short": "-o",
                      "long": "--address-pool-id",
                      "description": "sets backend address pool. This option\n     is mutually exclusive with --address-pool-name"
                    },
                    {
                      "flags": "-i, --http-settings-name [http-settings-name]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-i",
                      "long": "--http-settings-name",
                      "description": "sets backend http settings. This option\n     is mutually exclusive with --backend-http-setting-id"
                    },
                    {
                      "flags": "-e, --http-settings-id [http-settings-id]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-e",
                      "long": "--http-settings-id",
                      "description": "sets backend http settings. This option\n     is mutually exclusive with --http-settings-name"
                    },
                    {
                      "flags": "-r, --rule-name [rule-name]",
                      "required": 0,
                      "optional": -17,
                      "bool": true,
                      "short": "-r",
                      "long": "--rule-name",
                      "description": "sets path rules name"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete an url path map",
                  "fullName": "network application-gateway url-path-map delete",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-urlPathMaps.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the url path map"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show an url path map",
                  "fullName": "network application-gateway url-path-map show",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-urlPathMaps.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the url path map"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List url path maps",
                  "fullName": "network application-gateway url-path-map list",
                  "usage": "[options] <resource-group> <gateway-name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-urlPathMaps.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Set url path map in application gateway",
                  "fullName": "network application-gateway url-path-map set",
                  "usage": "[options] <resource-group> <gateway-name> <name>",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the name of the application gateway"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the url path map"
                    },
                    {
                      "flags": "-i, --http-settings-name [http-settings-name]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-i",
                      "long": "--http-settings-name",
                      "description": "the name of an existing backend HTTP settings"
                    },
                    {
                      "flags": "-a, --address-pool-name [address-pool-name]",
                      "required": 0,
                      "optional": -25,
                      "bool": true,
                      "short": "-a",
                      "long": "--address-pool-name",
                      "description": "the name of an existing backend address pool"
                    },
                    {
                      "flags": "-b, --default-redirect-configuration-name [default-redirect-configuration-name]",
                      "required": 0,
                      "optional": -43,
                      "bool": true,
                      "short": "-b",
                      "long": "--default-redirect-configuration-name",
                      "description": "the name of an existing redirect configuration"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "does not wait for the operation to complete. Returns as soon as the intial request is received by the server."
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {
                "rule": {
                  "name": "rule",
                  "description": "Commands to manage application gateway url path map rules",
                  "fullName": "network application-gateway url-path-map rule",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "create",
                      "description": "Add url path map rule to application gateway",
                      "fullName": "network application-gateway url-path-map rule create",
                      "usage": "[options] <resource-group> <gateway-name> <url-path-map-name> <name>",
                      "filePath": "commands/arm/network/network.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-g, --resource-group <resource-group>",
                          "required": -22,
                          "optional": 0,
                          "bool": true,
                          "short": "-g",
                          "long": "--resource-group",
                          "description": "the name of the resource group"
                        },
                        {
                          "flags": "-w, --gateway-name <gateway-name>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-w",
                          "long": "--gateway-name",
                          "description": "the name of the application gateway"
                        },
                        {
                          "flags": "-u, --url-path-map-name <url-path-map-name>",
                          "required": -25,
                          "optional": 0,
                          "bool": true,
                          "short": "-u",
                          "long": "--url-path-map-name",
                          "description": "the name of the url path map"
                        },
                        {
                          "flags": "-n, --name <name>",
                          "required": -12,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--name",
                          "description": "the name of the url path map rule"
                        },
                        {
                          "flags": "-p, --path <path>",
                          "required": -12,
                          "optional": 0,
                          "bool": true,
                          "short": "-p",
                          "long": "--path",
                          "description": "path, which specifies application gateway path rule"
                        },
                        {
                          "flags": "-i, --http-settings-name [http-settings-name]",
                          "required": 0,
                          "optional": -26,
                          "bool": true,
                          "short": "-i",
                          "long": "--http-settings-name",
                          "description": "the name of an existing backend HTTP settings"
                        },
                        {
                          "flags": "-a, --address-pool-name [address-pool-name]",
                          "required": 0,
                          "optional": -25,
                          "bool": true,
                          "short": "-a",
                          "long": "--address-pool-name",
                          "description": "the name of an existing backend address pool"
                        },
                        {
                          "flags": "-b, --redirect-configuration-name [redirect-configuration-name]",
                          "required": 0,
                          "optional": -35,
                          "bool": true,
                          "short": "-b",
                          "long": "--redirect-configuration-name",
                          "description": "the name of an existing redirect configuration"
                        },
                        {
                          "flags": "--nowait",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--nowait",
                          "description": "does not wait for the operation to complete. Returns as soon as the intial request is received by the server."
                        },
                        {
                          "flags": "-s, --subscription <subscription>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    },
                    {
                      "name": "set",
                      "description": "Set url path map rule in application gateway",
                      "fullName": "network application-gateway url-path-map rule set",
                      "usage": "[options] <resource-group> <gateway-name> <url-path-map-name> <name>",
                      "filePath": "commands/arm/network/network.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-g, --resource-group <resource-group>",
                          "required": -22,
                          "optional": 0,
                          "bool": true,
                          "short": "-g",
                          "long": "--resource-group",
                          "description": "the name of the resource group"
                        },
                        {
                          "flags": "-w, --gateway-name <gateway-name>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-w",
                          "long": "--gateway-name",
                          "description": "the name of the application gateway"
                        },
                        {
                          "flags": "-u, --url-path-map-name <url-path-map-name>",
                          "required": -25,
                          "optional": 0,
                          "bool": true,
                          "short": "-u",
                          "long": "--url-path-map-name",
                          "description": "the name of the url path map"
                        },
                        {
                          "flags": "-n, --name <name>",
                          "required": -12,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--name",
                          "description": "the name of the url path map rule"
                        },
                        {
                          "flags": "-p, --path [path]",
                          "required": 0,
                          "optional": -12,
                          "bool": true,
                          "short": "-p",
                          "long": "--path",
                          "description": "path, which specifies application gateway path rule"
                        },
                        {
                          "flags": "-i, --http-settings-name [http-settings-name]",
                          "required": 0,
                          "optional": -26,
                          "bool": true,
                          "short": "-i",
                          "long": "--http-settings-name",
                          "description": "the name of an existing backend HTTP settings"
                        },
                        {
                          "flags": "-a, --address-pool-name [address-pool-name]",
                          "required": 0,
                          "optional": -25,
                          "bool": true,
                          "short": "-a",
                          "long": "--address-pool-name",
                          "description": "the name of an existing backend address pool"
                        },
                        {
                          "flags": "-b, --redirect-configuration-name [redirect-configuration-name]",
                          "required": 0,
                          "optional": -35,
                          "bool": true,
                          "short": "-b",
                          "long": "--redirect-configuration-name",
                          "description": "the name of an existing redirect configuration"
                        },
                        {
                          "flags": "--nowait",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--nowait",
                          "description": "does not wait for the operation to complete. Returns as soon as the intial request is received by the server."
                        },
                        {
                          "flags": "-s, --subscription <subscription>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    },
                    {
                      "name": "show",
                      "description": "Show url path map rule from application gateway",
                      "fullName": "network application-gateway url-path-map rule show",
                      "usage": "[options] <resource-group> <gateway-name> <url-path-map-name> <name>",
                      "filePath": "commands/arm/network/network.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-g, --resource-group <resource-group>",
                          "required": -22,
                          "optional": 0,
                          "bool": true,
                          "short": "-g",
                          "long": "--resource-group",
                          "description": "the name of the resource group"
                        },
                        {
                          "flags": "-w, --gateway-name <gateway-name>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-w",
                          "long": "--gateway-name",
                          "description": "the name of the application gateway"
                        },
                        {
                          "flags": "-u, --url-path-map-name <url-path-map-name>",
                          "required": -25,
                          "optional": 0,
                          "bool": true,
                          "short": "-u",
                          "long": "--url-path-map-name",
                          "description": "the name of the url path map"
                        },
                        {
                          "flags": "-n, --name <name>",
                          "required": -12,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--name",
                          "description": "the name of the url path map rule"
                        },
                        {
                          "flags": "-s, --subscription <subscription>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    },
                    {
                      "name": "list",
                      "description": "List url path map rule from application gateway",
                      "fullName": "network application-gateway url-path-map rule list",
                      "usage": "[options] <resource-group> <gateway-name> <url-path-map-name>",
                      "filePath": "commands/arm/network/network.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-g, --resource-group <resource-group>",
                          "required": -22,
                          "optional": 0,
                          "bool": true,
                          "short": "-g",
                          "long": "--resource-group",
                          "description": "the name of the resource group"
                        },
                        {
                          "flags": "-w, --gateway-name <gateway-name>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-w",
                          "long": "--gateway-name",
                          "description": "the name of the application gateway"
                        },
                        {
                          "flags": "-u, --url-path-map-name <url-path-map-name>",
                          "required": -25,
                          "optional": 0,
                          "bool": true,
                          "short": "-u",
                          "long": "--url-path-map-name",
                          "description": "the name of the url path map"
                        },
                        {
                          "flags": "-s, --subscription <subscription>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    },
                    {
                      "name": "delete",
                      "description": "Delete an url path map rule from an application gateway",
                      "fullName": "network application-gateway url-path-map rule delete",
                      "usage": "[options] <resource-group> <gateway-name> <url-path-map-name> <name>",
                      "filePath": "commands/arm/network/network.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-g, --resource-group <resource-group>",
                          "required": -22,
                          "optional": 0,
                          "bool": true,
                          "short": "-g",
                          "long": "--resource-group",
                          "description": "the name of the resource group"
                        },
                        {
                          "flags": "-w, --gateway-name <gateway-name>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-w",
                          "long": "--gateway-name",
                          "description": "the name of the application gateway"
                        },
                        {
                          "flags": "-u, --url-path-map-name <url-path-map-name>",
                          "required": -25,
                          "optional": 0,
                          "bool": true,
                          "short": "-u",
                          "long": "--url-path-map-name",
                          "description": "the name of the url path map"
                        },
                        {
                          "flags": "-n, --name <name>",
                          "required": -12,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--name",
                          "description": "the name of the map rule"
                        },
                        {
                          "flags": "-q, --quiet",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-q",
                          "long": "--quiet",
                          "description": "quiet mode, do not ask for delete confirmation"
                        },
                        {
                          "flags": "--nowait",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--nowait",
                          "description": "does not wait for the operation to complete. Returns as soon as the intial request is received by the server."
                        },
                        {
                          "flags": "-s, --subscription <subscription>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    }
                  ],
                  "categories": {}
                }
              }
            },
            "waf-config": {
              "name": "waf-config",
              "description": "Commands to manage web application firewall configuration",
              "fullName": "network application-gateway waf-config",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a web application firewall configuration",
                  "fullName": "network application-gateway waf-config create",
                  "usage": "[options] <resource-group> <gateway-name> <enable> <waf-mode> <rule-set-type> <rule-set-version>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-webApplicationFirewallConfiguration.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-e, --enable <enable>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--enable",
                      "description": "whether the web application firewall is\n     enabled or not"
                    },
                    {
                      "flags": "-m, --waf-mode <waf-mode>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-m",
                      "long": "--waf-mode",
                      "description": "web application firewall mode"
                    },
                    {
                      "flags": "-y, --rule-set-type <rule-set-type>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-y",
                      "long": "--rule-set-type",
                      "description": "the type of the web application\n     firewall rule set. Possible values are: 'OWASP'"
                    },
                    {
                      "flags": "-r, --rule-set-version <rule-set-version>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--rule-set-version",
                      "description": "the version of the rule set type"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update a web application firewall configuration",
                  "fullName": "network application-gateway waf-config set",
                  "usage": "[options] <resource-group> <gateway-name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-webApplicationFirewallConfiguration.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-e, --enable [enable]",
                      "required": 0,
                      "optional": -14,
                      "bool": true,
                      "short": "-e",
                      "long": "--enable",
                      "description": "whether the web application firewall is\n     enabled or not"
                    },
                    {
                      "flags": "-m, --waf-mode [waf-mode]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-m",
                      "long": "--waf-mode",
                      "description": "web application firewall mode"
                    },
                    {
                      "flags": "-y, --rule-set-type [rule-set-type]",
                      "required": 0,
                      "optional": -21,
                      "bool": true,
                      "short": "-y",
                      "long": "--rule-set-type",
                      "description": "the type of the web application\n     firewall rule set. Possible values are: 'OWASP'"
                    },
                    {
                      "flags": "-r, --rule-set-version [rule-set-version]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-r",
                      "long": "--rule-set-version",
                      "description": "the version of the rule set type"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a web application firewall configuration",
                  "fullName": "network application-gateway waf-config delete",
                  "usage": "[options] <resource-group> <gateway-name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-webApplicationFirewallConfiguration.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "do not wait for the operation to complete. Returns as soon as the intial request is received by the server"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a web application firewall configuration",
                  "fullName": "network application-gateway waf-config show",
                  "usage": "[options] <resource-group> <gateway-name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-webApplicationFirewallConfiguration.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List web application firewall configurations",
                  "fullName": "network application-gateway waf-config list",
                  "usage": "[options] <resource-group> <gateway-name>",
                  "filePath": "commands/arm/network.generated/ApplicationGateways-webApplicationFirewallConfiguration.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {
                "disabled-rule-group": {
                  "name": "disabled-rule-group",
                  "description": "Commands to manage disabled rule groups",
                  "fullName": "network application-gateway waf-config disabled-rule-group",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "create",
                      "description": "Create a group of disabled rules",
                      "fullName": "network application-gateway waf-config disabled-rule-group create",
                      "usage": "[options] <resource-group> <gateway-name> <rule-group-name>",
                      "filePath": "commands/arm/network/network.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-g, --resource-group <resource-group>",
                          "required": -22,
                          "optional": 0,
                          "bool": true,
                          "short": "-g",
                          "long": "--resource-group",
                          "description": "the name of the resource group"
                        },
                        {
                          "flags": "-w, --gateway-name <gateway-name>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-w",
                          "long": "--gateway-name",
                          "description": "the gateway name"
                        },
                        {
                          "flags": "-n, --rule-group-name <rule-group-name>",
                          "required": -23,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--rule-group-name",
                          "description": "the name of the rule group that will be disabled"
                        },
                        {
                          "flags": "-r, --rules [rules]",
                          "required": 0,
                          "optional": -13,
                          "bool": true,
                          "short": "-r",
                          "long": "--rules",
                          "description": "The list of rules that will be disabled. If null, all rules of the rule group will be disabled"
                        },
                        {
                          "flags": "-s, --subscription <subscription>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    },
                    {
                      "name": "set",
                      "description": "Update a group of disabled rules",
                      "fullName": "network application-gateway waf-config disabled-rule-group set",
                      "usage": "[options] <resource-group> <gateway-name> <rule-group-name>",
                      "filePath": "commands/arm/network/network.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-g, --resource-group <resource-group>",
                          "required": -22,
                          "optional": 0,
                          "bool": true,
                          "short": "-g",
                          "long": "--resource-group",
                          "description": "the name of the resource group"
                        },
                        {
                          "flags": "-w, --gateway-name <gateway-name>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-w",
                          "long": "--gateway-name",
                          "description": "the gateway name"
                        },
                        {
                          "flags": "-n, --rule-group-name <rule-group-name>",
                          "required": -23,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--rule-group-name",
                          "description": "the name of the rule group that will be disabled"
                        },
                        {
                          "flags": "-r, --rules [rules]",
                          "required": 0,
                          "optional": -13,
                          "bool": true,
                          "short": "-r",
                          "long": "--rules",
                          "description": "The list of rules that will be disabled. If null, all rules of the rule group will be disabled"
                        },
                        {
                          "flags": "-s, --subscription <subscription>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    },
                    {
                      "name": "show",
                      "description": "Get a group of disabled rules",
                      "fullName": "network application-gateway waf-config disabled-rule-group show",
                      "usage": "[options] <resource-group> <gateway-name> <rule-group-name>",
                      "filePath": "commands/arm/network/network.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-g, --resource-group <resource-group>",
                          "required": -22,
                          "optional": 0,
                          "bool": true,
                          "short": "-g",
                          "long": "--resource-group",
                          "description": "the name of the resource group"
                        },
                        {
                          "flags": "-w, --gateway-name <gateway-name>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-w",
                          "long": "--gateway-name",
                          "description": "the gateway name"
                        },
                        {
                          "flags": "-n, --rule-group-name <rule-group-name>",
                          "required": -23,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--rule-group-name",
                          "description": "the name of the rule group that will be disabled"
                        },
                        {
                          "flags": "-s, --subscription <subscription>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    },
                    {
                      "name": "list",
                      "description": "List all disabled rule groups for a gateway",
                      "fullName": "network application-gateway waf-config disabled-rule-group list",
                      "usage": "[options] <resource-group> <gateway-name>",
                      "filePath": "commands/arm/network/network.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-g, --resource-group <resource-group>",
                          "required": -22,
                          "optional": 0,
                          "bool": true,
                          "short": "-g",
                          "long": "--resource-group",
                          "description": "the name of the resource group"
                        },
                        {
                          "flags": "-w, --gateway-name <gateway-name>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-w",
                          "long": "--gateway-name",
                          "description": "the gateway name"
                        },
                        {
                          "flags": "-s, --subscription <subscription>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    },
                    {
                      "name": "delete",
                      "description": "Delete a group of disabled rules",
                      "fullName": "network application-gateway waf-config disabled-rule-group delete",
                      "usage": "[options] <resource-group> <gateway-name> <rule-group-name>",
                      "filePath": "commands/arm/network/network.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-g, --resource-group <resource-group>",
                          "required": -22,
                          "optional": 0,
                          "bool": true,
                          "short": "-g",
                          "long": "--resource-group",
                          "description": "the name of the resource group"
                        },
                        {
                          "flags": "-w, --gateway-name <gateway-name>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-w",
                          "long": "--gateway-name",
                          "description": "the gateway name"
                        },
                        {
                          "flags": "-n, --rule-group-name <rule-group-name>",
                          "required": -23,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--rule-group-name",
                          "description": "the name of the rule group that will be disabled"
                        },
                        {
                          "flags": "-q, --quiet",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-q",
                          "long": "--quiet",
                          "description": "quiet mode, do not ask for delete confirmation"
                        },
                        {
                          "flags": "-s, --subscription <subscription>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    }
                  ],
                  "categories": {}
                }
              }
            },
            "backend-health": {
              "name": "backend-health",
              "description": "Commands to manage backend health",
              "fullName": "network application-gateway backend-health",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Perform backend health operation on an application gateway",
                  "fullName": "network application-gateway backend-health show",
                  "usage": "[options] <resource-group> <gateway-name>",
                  "filePath": "commands/arm/network.generated/applicationGateways.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --gateway-name <gateway-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--gateway-name",
                      "description": "the gateway name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "express-route": {
          "name": "express-route",
          "description": "Commands to manage express routes",
          "fullName": "network express-route",
          "usage": "[options]",
          "options": [],
          "commands": [],
          "categories": {
            "circuit": {
              "name": "circuit",
              "description": "Commands to manage circuits",
              "fullName": "network express-route circuit",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create an express route circuit",
                  "fullName": "network express-route circuit create",
                  "usage": "[options] <resource-group> <name> <location> <service-provider-name> <peering-location>",
                  "filePath": "commands/arm/network.generated/ExpressRoutes-circuits.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the express route circuit"
                    },
                    {
                      "flags": "-l, --location <location>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--location",
                      "description": "the location"
                    },
                    {
                      "flags": "-e, --sku-tier [sku-tier]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-e",
                      "long": "--sku-tier",
                      "description": "the tier of the SKU. Possible values\n     are 'Standard' and 'Premium'"
                    },
                    {
                      "flags": "-f, --sku-family [sku-family]",
                      "required": 0,
                      "optional": -18,
                      "bool": true,
                      "short": "-f",
                      "long": "--sku-family",
                      "description": "the family of the SKU. Possible values\n     are: 'UnlimitedData' and 'MeteredData'"
                    },
                    {
                      "flags": "-p, --service-provider-name <service-provider-name>",
                      "required": -29,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--service-provider-name",
                      "description": "the serviceProviderName"
                    },
                    {
                      "flags": "-i, --peering-location <peering-location>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--peering-location",
                      "description": "the peering location"
                    },
                    {
                      "flags": "-b, --bandwidth-in-mbps [bandwidth-in-mbps]",
                      "required": 0,
                      "optional": -25,
                      "bool": true,
                      "short": "-b",
                      "long": "--bandwidth-in-mbps",
                      "description": "the BandwidthInMbps"
                    },
                    {
                      "flags": "-t, --tags [tags]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-t",
                      "long": "--tags",
                      "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update an express route circuit",
                  "fullName": "network express-route circuit set",
                  "usage": "[options] <resource-group> <name>",
                  "filePath": "commands/arm/network.generated/ExpressRoutes-circuits.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the express route circuit"
                    },
                    {
                      "flags": "-e, --sku-tier [sku-tier]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-e",
                      "long": "--sku-tier",
                      "description": "the tier of the SKU. Possible values\n     are 'Standard' and 'Premium'"
                    },
                    {
                      "flags": "-f, --sku-family [sku-family]",
                      "required": 0,
                      "optional": -18,
                      "bool": true,
                      "short": "-f",
                      "long": "--sku-family",
                      "description": "the family of the SKU. Possible values\n     are: 'UnlimitedData' and 'MeteredData'"
                    },
                    {
                      "flags": "-b, --bandwidth-in-mbps [bandwidth-in-mbps]",
                      "required": 0,
                      "optional": -25,
                      "bool": true,
                      "short": "-b",
                      "long": "--bandwidth-in-mbps",
                      "description": "the BandwidthInMbps"
                    },
                    {
                      "flags": "-t, --tags [tags]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-t",
                      "long": "--tags",
                      "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete an express route circuit",
                  "fullName": "network express-route circuit delete",
                  "usage": "[options] <resource-group> <name>",
                  "filePath": "commands/arm/network.generated/ExpressRoutes-circuits.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the express route circuit"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show an express route circuit",
                  "fullName": "network express-route circuit show",
                  "usage": "[options] <resource-group> <name>",
                  "filePath": "commands/arm/network.generated/ExpressRoutes-circuits.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the express route circuit"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List express route circuits",
                  "fullName": "network express-route circuit list",
                  "usage": "[options] <resource-group>",
                  "filePath": "commands/arm/network.generated/ExpressRoutes-circuits.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group [resource-group]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "authorization": {
              "name": "authorization",
              "description": "Commands to manage express route circuit authorizations",
              "fullName": "network express-route authorization",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create an express route circuit authorization",
                  "fullName": "network express-route authorization create",
                  "usage": "[options] <resource-group> <circuit-name> <auth-name> <key>",
                  "filePath": "commands/arm/network.generated/ExpressRoutes-expressRouteCircuitAuthorizations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-c, --circuit-name <circuit-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--circuit-name",
                      "description": "the circuit name"
                    },
                    {
                      "flags": "-n, --auth-name <auth-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--auth-name",
                      "description": "the auth name"
                    },
                    {
                      "flags": "-k, --key <key>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--key",
                      "description": "the authorization key"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update an express route circuit authorization",
                  "fullName": "network express-route authorization set",
                  "usage": "[options] <resource-group> <circuit-name> <auth-name>",
                  "filePath": "commands/arm/network.generated/ExpressRoutes-expressRouteCircuitAuthorizations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-c, --circuit-name <circuit-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--circuit-name",
                      "description": "the circuit name"
                    },
                    {
                      "flags": "-n, --auth-name <auth-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--auth-name",
                      "description": "the auth name"
                    },
                    {
                      "flags": "-k, --key [key]",
                      "required": 0,
                      "optional": -11,
                      "bool": true,
                      "short": "-k",
                      "long": "--key",
                      "description": "the authorization key"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete an express route circuit authorization",
                  "fullName": "network express-route authorization delete",
                  "usage": "[options] <resource-group> <circuit-name> <auth-name>",
                  "filePath": "commands/arm/network.generated/ExpressRoutes-expressRouteCircuitAuthorizations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-c, --circuit-name <circuit-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--circuit-name",
                      "description": "the circuit name"
                    },
                    {
                      "flags": "-n, --auth-name <auth-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--auth-name",
                      "description": "the auth name"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show an express route circuit authorization",
                  "fullName": "network express-route authorization show",
                  "usage": "[options] <resource-group> <circuit-name> <auth-name>",
                  "filePath": "commands/arm/network.generated/ExpressRoutes-expressRouteCircuitAuthorizations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-c, --circuit-name <circuit-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--circuit-name",
                      "description": "the circuit name"
                    },
                    {
                      "flags": "-n, --auth-name <auth-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--auth-name",
                      "description": "the auth name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List express route circuit authorizations",
                  "fullName": "network express-route authorization list",
                  "usage": "[options] <resource-group> <circuit-name>",
                  "filePath": "commands/arm/network.generated/ExpressRoutes-expressRouteCircuitAuthorizations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-c, --circuit-name <circuit-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--circuit-name",
                      "description": "the circuit name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "peering": {
              "name": "peering",
              "description": "Commands to manage express route circuit peerings",
              "fullName": "network express-route peering",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create an express route circuit peering",
                  "fullName": "network express-route peering create",
                  "usage": "[options] <resource-group> <circuit-name> <name> <peer-asn> <primary-address-prefix> <secondary-address-prefix> <vlan-id>",
                  "filePath": "commands/arm/network.generated/ExpressRoutes-expressRouteCircuitPeerings.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-c, --circuit-name <circuit-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--circuit-name",
                      "description": "the circuit name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the express route circuit peering"
                    },
                    {
                      "flags": "-y, --type [type]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-y",
                      "long": "--type",
                      "description": "the PeeringType. Possible values are:\n     'AzurePublicPeering', 'AzurePrivatePeering', and 'MicrosoftPeering'"
                    },
                    {
                      "flags": "-a, --azure-asn [azure-asn]",
                      "required": 0,
                      "optional": -17,
                      "bool": true,
                      "short": "-a",
                      "long": "--azure-asn",
                      "description": "the Azure ASN"
                    },
                    {
                      "flags": "-p, --peer-asn <peer-asn>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--peer-asn",
                      "description": "the peer ASN"
                    },
                    {
                      "flags": "-r, --primary-address-prefix <primary-address-prefix>",
                      "required": -30,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--primary-address-prefix",
                      "description": "the primary address prefix"
                    },
                    {
                      "flags": "-o, --secondary-address-prefix <secondary-address-prefix>",
                      "required": -32,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--secondary-address-prefix",
                      "description": "the secondary address prefix"
                    },
                    {
                      "flags": "-d, --primary-azure-port [primary-azure-port]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-d",
                      "long": "--primary-azure-port",
                      "description": "the primary port"
                    },
                    {
                      "flags": "-b, --secondary-azure-port [secondary-azure-port]",
                      "required": 0,
                      "optional": -28,
                      "bool": true,
                      "short": "-b",
                      "long": "--secondary-azure-port",
                      "description": "the secondary port"
                    },
                    {
                      "flags": "-k, --shared-key [shared-key]",
                      "required": 0,
                      "optional": -18,
                      "bool": true,
                      "short": "-k",
                      "long": "--shared-key",
                      "description": "the shared key"
                    },
                    {
                      "flags": "-i, --vlan-id <vlan-id>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--vlan-id",
                      "description": "the VLAN ID"
                    },
                    {
                      "flags": "-f, --ms-advertised-public-prefixes [ms-advertised-public-prefixes]",
                      "required": 0,
                      "optional": -37,
                      "bool": true,
                      "short": "-f",
                      "long": "--ms-advertised-public-prefixes",
                      "description": "the reference of\n     AdvertisedPublicPrefixes"
                    },
                    {
                      "flags": "-m, --ms-advertised-public-prefix-state [ms-advertised-public-prefix-state]",
                      "required": 0,
                      "optional": -41,
                      "bool": true,
                      "short": "-m",
                      "long": "--ms-advertised-public-prefix-state",
                      "description": "advertisedPublicPrefixState of the\n     Peering resource. Possible values are 'NotConfigured', 'Configuring',\n     'Configured', and 'ValidationNeeded'"
                    },
                    {
                      "flags": "-l, --ms-customer-asn [ms-customer-asn]",
                      "required": 0,
                      "optional": -23,
                      "bool": true,
                      "short": "-l",
                      "long": "--ms-customer-asn",
                      "description": "the CustomerASN of the peering"
                    },
                    {
                      "flags": "-u, --ms-routing-registry-name [ms-routing-registry-name]",
                      "required": 0,
                      "optional": -32,
                      "bool": true,
                      "short": "-u",
                      "long": "--ms-routing-registry-name",
                      "description": "the RoutingRegistryName of the\n     configuration"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update an express route circuit peering",
                  "fullName": "network express-route peering set",
                  "usage": "[options] <resource-group> <circuit-name> <name>",
                  "filePath": "commands/arm/network.generated/ExpressRoutes-expressRouteCircuitPeerings.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-c, --circuit-name <circuit-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--circuit-name",
                      "description": "the circuit name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the express route circuit peering"
                    },
                    {
                      "flags": "-a, --azure-asn [azure-asn]",
                      "required": 0,
                      "optional": -17,
                      "bool": true,
                      "short": "-a",
                      "long": "--azure-asn",
                      "description": "the Azure ASN"
                    },
                    {
                      "flags": "-p, --peer-asn [peer-asn]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-p",
                      "long": "--peer-asn",
                      "description": "the peer ASN"
                    },
                    {
                      "flags": "-r, --primary-address-prefix [primary-address-prefix]",
                      "required": 0,
                      "optional": -30,
                      "bool": true,
                      "short": "-r",
                      "long": "--primary-address-prefix",
                      "description": "the primary address prefix"
                    },
                    {
                      "flags": "-o, --secondary-address-prefix [secondary-address-prefix]",
                      "required": 0,
                      "optional": -32,
                      "bool": true,
                      "short": "-o",
                      "long": "--secondary-address-prefix",
                      "description": "the secondary address prefix"
                    },
                    {
                      "flags": "-d, --primary-azure-port [primary-azure-port]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-d",
                      "long": "--primary-azure-port",
                      "description": "the primary port"
                    },
                    {
                      "flags": "-b, --secondary-azure-port [secondary-azure-port]",
                      "required": 0,
                      "optional": -28,
                      "bool": true,
                      "short": "-b",
                      "long": "--secondary-azure-port",
                      "description": "the secondary port"
                    },
                    {
                      "flags": "-k, --shared-key [shared-key]",
                      "required": 0,
                      "optional": -18,
                      "bool": true,
                      "short": "-k",
                      "long": "--shared-key",
                      "description": "the shared key"
                    },
                    {
                      "flags": "-i, --vlan-id [vlan-id]",
                      "required": 0,
                      "optional": -15,
                      "bool": true,
                      "short": "-i",
                      "long": "--vlan-id",
                      "description": "the VLAN ID"
                    },
                    {
                      "flags": "-f, --ms-advertised-public-prefixes [ms-advertised-public-prefixes]",
                      "required": 0,
                      "optional": -37,
                      "bool": true,
                      "short": "-f",
                      "long": "--ms-advertised-public-prefixes",
                      "description": "the reference of\n     AdvertisedPublicPrefixes"
                    },
                    {
                      "flags": "-m, --ms-advertised-public-prefix-state [ms-advertised-public-prefix-state]",
                      "required": 0,
                      "optional": -41,
                      "bool": true,
                      "short": "-m",
                      "long": "--ms-advertised-public-prefix-state",
                      "description": "advertisedPublicPrefixState of the\n     Peering resource. Possible values are 'NotConfigured', 'Configuring',\n     'Configured', and 'ValidationNeeded'"
                    },
                    {
                      "flags": "-l, --ms-customer-asn [ms-customer-asn]",
                      "required": 0,
                      "optional": -23,
                      "bool": true,
                      "short": "-l",
                      "long": "--ms-customer-asn",
                      "description": "the CustomerASN of the peering"
                    },
                    {
                      "flags": "-u, --ms-routing-registry-name [ms-routing-registry-name]",
                      "required": 0,
                      "optional": -32,
                      "bool": true,
                      "short": "-u",
                      "long": "--ms-routing-registry-name",
                      "description": "the RoutingRegistryName of the\n     configuration"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete an express route circuit peering",
                  "fullName": "network express-route peering delete",
                  "usage": "[options] <resource-group> <circuit-name> <name>",
                  "filePath": "commands/arm/network.generated/ExpressRoutes-expressRouteCircuitPeerings.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-c, --circuit-name <circuit-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--circuit-name",
                      "description": "the circuit name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the express route circuit peering"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show an express route circuit peering",
                  "fullName": "network express-route peering show",
                  "usage": "[options] <resource-group> <circuit-name> <name>",
                  "filePath": "commands/arm/network.generated/ExpressRoutes-expressRouteCircuitPeerings.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-c, --circuit-name <circuit-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--circuit-name",
                      "description": "the circuit name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the express route circuit peering"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List express route circuit peerings",
                  "fullName": "network express-route peering list",
                  "usage": "[options] <resource-group> <circuit-name>",
                  "filePath": "commands/arm/network.generated/ExpressRoutes-expressRouteCircuitPeerings.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-c, --circuit-name <circuit-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--circuit-name",
                      "description": "the circuit name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "provider": {
              "name": "provider",
              "description": "Commands to manage express route service providers",
              "fullName": "network express-route provider",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "List express route service providers",
                  "fullName": "network express-route provider list",
                  "usage": "[options]",
                  "filePath": "commands/arm/network.generated/ExpressRoutes-expressRouteServiceProviders.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "lb": {
          "name": "lb",
          "description": "Commands to manage load balancers",
          "fullName": "network lb",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a load balancer",
              "fullName": "network lb create",
              "usage": "[options] <resource-group> <name> <location>",
              "filePath": "commands/arm/network.generated/loadBalancers.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the load balancer"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-k, --sku-name [sku-name]",
                  "required": 0,
                  "optional": -16,
                  "bool": true,
                  "short": "-k",
                  "long": "--sku-name",
                  "description": "name of a load balancer SKU"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "set",
              "description": "Update a load balancer",
              "fullName": "network lb set",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/loadBalancers.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the load balancer"
                },
                {
                  "flags": "-k, --sku-name [sku-name]",
                  "required": 0,
                  "optional": -16,
                  "bool": true,
                  "short": "-k",
                  "long": "--sku-name",
                  "description": "name of a load balancer SKU"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a load balancer",
              "fullName": "network lb delete",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/loadBalancers.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the load balancer"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode, do not ask for delete confirmation"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show a load balancer",
              "fullName": "network lb show",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/loadBalancers.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the load balancer"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list",
              "description": "List load balancers",
              "fullName": "network lb list",
              "usage": "[options] <resource-group>",
              "filePath": "commands/arm/network.generated/loadBalancers.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group [resource-group]",
                  "required": 0,
                  "optional": -22,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {
            "address-pool": {
              "name": "address-pool",
              "description": "Commands to manage backend address pools",
              "fullName": "network lb address-pool",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a backend address pool",
                  "fullName": "network lb address-pool create",
                  "usage": "[options] <resource-group> <lb-name> <name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-backendAddressPools.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the backend address pool"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a backend address pool",
                  "fullName": "network lb address-pool delete",
                  "usage": "[options] <resource-group> <lb-name> <name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-backendAddressPools.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the backend address pool"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a backend address pool",
                  "fullName": "network lb address-pool show",
                  "usage": "[options] <resource-group> <lb-name> <name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-backendAddressPools.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the backend address pool"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List backend address pools",
                  "fullName": "network lb address-pool list",
                  "usage": "[options] <resource-group> <lb-name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-backendAddressPools.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "frontend-ip": {
              "name": "frontend-ip",
              "description": "Commands to manage frontend ip configurations",
              "fullName": "network lb frontend-ip",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a frontend ip configuration",
                  "fullName": "network lb frontend-ip create",
                  "usage": "[options] <resource-group> <lb-name> <name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-frontendIPConfigurations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the frontend ip configuration"
                    },
                    {
                      "flags": "-a, --private-ip-address [private-ip-address]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-a",
                      "long": "--private-ip-address",
                      "description": "the private IP address of the IP\n     configuration"
                    },
                    {
                      "flags": "-e, --subnet-name [subnet-name]",
                      "required": 0,
                      "optional": -19,
                      "bool": true,
                      "short": "-e",
                      "long": "--subnet-name",
                      "description": "sets subnet name. This option is\n     mutually exclusive with --subnet-id"
                    },
                    {
                      "flags": "-m, --subnet-vnet-name [subnet-vnet-name]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-m",
                      "long": "--subnet-vnet-name",
                      "description": "name of the virtual network that contains subnet"
                    },
                    {
                      "flags": "-b, --subnet-id [subnet-id]",
                      "required": 0,
                      "optional": -17,
                      "bool": true,
                      "short": "-b",
                      "long": "--subnet-id",
                      "description": "sets subnet id. This option is mutually\n     exclusive with --subnet-name"
                    },
                    {
                      "flags": "-u, --public-ip-id [public-ip-id]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-u",
                      "long": "--public-ip-id",
                      "description": "sets public ip address id. This option\n     is mutually exclusive with --public-ip-name"
                    },
                    {
                      "flags": "-i, --public-ip-name [public-ip-name]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-i",
                      "long": "--public-ip-name",
                      "description": "sets public ip address name. This\n     option is mutually exclusive with --public-ip-id"
                    },
                    {
                      "flags": "-z, --zones [zones]",
                      "required": 0,
                      "optional": -13,
                      "bool": true,
                      "short": "-z",
                      "long": "--zones",
                      "description": "a list of availability zones denoting\n     the IP allocated for the resource needs to come from"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update a frontend ip configuration",
                  "fullName": "network lb frontend-ip set",
                  "usage": "[options] <resource-group> <lb-name> <name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-frontendIPConfigurations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the frontend ip configuration"
                    },
                    {
                      "flags": "-a, --private-ip-address [private-ip-address]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-a",
                      "long": "--private-ip-address",
                      "description": "the private IP address of the IP\n     configuration"
                    },
                    {
                      "flags": "-e, --subnet-name [subnet-name]",
                      "required": 0,
                      "optional": -19,
                      "bool": true,
                      "short": "-e",
                      "long": "--subnet-name",
                      "description": "sets subnet name. This option is\n     mutually exclusive with --subnet-id"
                    },
                    {
                      "flags": "-m, --subnet-vnet-name [subnet-vnet-name]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-m",
                      "long": "--subnet-vnet-name",
                      "description": "name of the virtual network that contains subnet"
                    },
                    {
                      "flags": "-b, --subnet-id [subnet-id]",
                      "required": 0,
                      "optional": -17,
                      "bool": true,
                      "short": "-b",
                      "long": "--subnet-id",
                      "description": "sets subnet id. This option is mutually\n     exclusive with --subnet-name"
                    },
                    {
                      "flags": "-u, --public-ip-id [public-ip-id]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-u",
                      "long": "--public-ip-id",
                      "description": "sets public ip address id. This option\n     is mutually exclusive with --public-ip-name"
                    },
                    {
                      "flags": "-i, --public-ip-name [public-ip-name]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-i",
                      "long": "--public-ip-name",
                      "description": "sets public ip address name. This\n     option is mutually exclusive with --public-ip-id"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a frontend ip configuration",
                  "fullName": "network lb frontend-ip delete",
                  "usage": "[options] <resource-group> <lb-name> <name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-frontendIPConfigurations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the frontend ip configuration"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a frontend ip configuration",
                  "fullName": "network lb frontend-ip show",
                  "usage": "[options] <resource-group> <lb-name> <name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-frontendIPConfigurations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the frontend ip configuration"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List frontend ip configurations",
                  "fullName": "network lb frontend-ip list",
                  "usage": "[options] <resource-group> <lb-name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-frontendIPConfigurations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "inbound-nat-pool": {
              "name": "inbound-nat-pool",
              "description": "Commands to manage inbound nat pools",
              "fullName": "network lb inbound-nat-pool",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create an inbound nat pool",
                  "fullName": "network lb inbound-nat-pool create",
                  "usage": "[options] <resource-group> <lb-name> <name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-inboundNatPools.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the inbound nat pool"
                    },
                    {
                      "flags": "-i, --frontend-ip-name [frontend-ip-name]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-i",
                      "long": "--frontend-ip-name",
                      "description": "sets frontend ip configuration. This\n     option is mutually exclusive with --frontend-ip-id"
                    },
                    {
                      "flags": "-d, --frontend-ip-id [frontend-ip-id]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-d",
                      "long": "--frontend-ip-id",
                      "description": "sets frontend ip configuration. This\n     option is mutually exclusive with --frontend-ip-name"
                    },
                    {
                      "flags": "-p, --protocol [protocol]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-p",
                      "long": "--protocol",
                      "description": "the transport protocol for the\n     endpoint. Possible values are 'Udp' or 'Tcp' or 'All.'"
                    },
                    {
                      "flags": "-f, --frontend-port-range-start [frontend-port-range-start]",
                      "required": 0,
                      "optional": -33,
                      "bool": true,
                      "short": "-f",
                      "long": "--frontend-port-range-start",
                      "description": "the first port number in the range of\n     external ports that will be used to provide Inbound Nat to NICs associated with\n     a load balancer. Acceptable values range between 1 and 65534"
                    },
                    {
                      "flags": "-e, --frontend-port-range-end [frontend-port-range-end]",
                      "required": 0,
                      "optional": -31,
                      "bool": true,
                      "short": "-e",
                      "long": "--frontend-port-range-end",
                      "description": "the last port number in the range of\n     external ports that will be used to provide Inbound Nat to NICs associated with\n     a load balancer. Acceptable values range between 1 and 65535"
                    },
                    {
                      "flags": "-b, --backend-port [backend-port]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-b",
                      "long": "--backend-port",
                      "description": "the port used for internal connections\n     on the endpoint. Acceptable values are between 1 and 65535"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update an inbound nat pool",
                  "fullName": "network lb inbound-nat-pool set",
                  "usage": "[options] <resource-group> <lb-name> <name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-inboundNatPools.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the inbound nat pool"
                    },
                    {
                      "flags": "-i, --frontend-ip-name [frontend-ip-name]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-i",
                      "long": "--frontend-ip-name",
                      "description": "sets frontend ip configuration. This\n     option is mutually exclusive with --frontend-ip-id"
                    },
                    {
                      "flags": "-d, --frontend-ip-id [frontend-ip-id]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-d",
                      "long": "--frontend-ip-id",
                      "description": "sets frontend ip configuration. This\n     option is mutually exclusive with --frontend-ip-name"
                    },
                    {
                      "flags": "-p, --protocol [protocol]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-p",
                      "long": "--protocol",
                      "description": "the transport protocol for the\n     endpoint. Possible values are 'Udp' or 'Tcp' or 'All.'"
                    },
                    {
                      "flags": "-f, --frontend-port-range-start [frontend-port-range-start]",
                      "required": 0,
                      "optional": -33,
                      "bool": true,
                      "short": "-f",
                      "long": "--frontend-port-range-start",
                      "description": "the first port number in the range of\n     external ports that will be used to provide Inbound Nat to NICs associated with\n     a load balancer. Acceptable values range between 1 and 65534"
                    },
                    {
                      "flags": "-e, --frontend-port-range-end [frontend-port-range-end]",
                      "required": 0,
                      "optional": -31,
                      "bool": true,
                      "short": "-e",
                      "long": "--frontend-port-range-end",
                      "description": "the last port number in the range of\n     external ports that will be used to provide Inbound Nat to NICs associated with\n     a load balancer. Acceptable values range between 1 and 65535"
                    },
                    {
                      "flags": "-b, --backend-port [backend-port]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-b",
                      "long": "--backend-port",
                      "description": "the port used for internal connections\n     on the endpoint. Acceptable values are between 1 and 65535"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete an inbound nat pool",
                  "fullName": "network lb inbound-nat-pool delete",
                  "usage": "[options] <resource-group> <lb-name> <name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-inboundNatPools.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the inbound nat pool"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show an inbound nat pool",
                  "fullName": "network lb inbound-nat-pool show",
                  "usage": "[options] <resource-group> <lb-name> <name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-inboundNatPools.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the inbound nat pool"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List inbound nat pools",
                  "fullName": "network lb inbound-nat-pool list",
                  "usage": "[options] <resource-group> <lb-name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-inboundNatPools.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "inbound-nat-rule": {
              "name": "inbound-nat-rule",
              "description": "Commands to manage inbound nat rules",
              "fullName": "network lb inbound-nat-rule",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create an inbound nat rule",
                  "fullName": "network lb inbound-nat-rule create",
                  "usage": "[options] <resource-group> <lb-name> <name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-inboundNatRules.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the inbound nat rule"
                    },
                    {
                      "flags": "-t, --frontend-ip-name [frontend-ip-name]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-t",
                      "long": "--frontend-ip-name",
                      "description": "sets frontend ip configuration. This\n     option is mutually exclusive with --frontend-ip-id"
                    },
                    {
                      "flags": "-s, --frontend-ip-id [frontend-ip-id]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-s",
                      "long": "--frontend-ip-id",
                      "description": "sets frontend ip configuration. This\n     option is mutually exclusive with --frontend-ip-name"
                    },
                    {
                      "flags": "-p, --protocol [protocol]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-p",
                      "long": "--protocol",
                      "description": "the transport protocol for the\n     endpoint. Possible values are 'Udp' or 'Tcp' or 'All.'"
                    },
                    {
                      "flags": "-f, --frontend-port [frontend-port]",
                      "required": 0,
                      "optional": -21,
                      "bool": true,
                      "short": "-f",
                      "long": "--frontend-port",
                      "description": "the port for the external endpoint.\n     Port numbers for each rule must be unique within the Load Balancer. Acceptable\n     values range from 1 to 65534"
                    },
                    {
                      "flags": "-b, --backend-port [backend-port]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-b",
                      "long": "--backend-port",
                      "description": "the port used for the internal\n     endpoint. Acceptable values range from 1 to 65535"
                    },
                    {
                      "flags": "-i, --idle-timeout [idle-timeout]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-i",
                      "long": "--idle-timeout",
                      "description": "the timeout for the TCP idle\n     connection. The value can be set between 4 and 30 minutes. The default value is\n     4 minutes. This element is only used when the protocol is set to TCP"
                    },
                    {
                      "flags": "-e, --enable-floating-ip [enable-floating-ip]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-e",
                      "long": "--enable-floating-ip",
                      "description": "configures a virtual machine's\n     endpoint for the floating IP capability required to configure a SQL AlwaysOn\n     Availability Group. This setting is required when using the SQL AlwaysOn\n     Availability Groups in SQL server. This setting can't be changed after you\n     create the endpoint"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update an inbound nat rule",
                  "fullName": "network lb inbound-nat-rule set",
                  "usage": "[options] <resource-group> <lb-name> <name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-inboundNatRules.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the inbound nat rule"
                    },
                    {
                      "flags": "-t, --frontend-ip-name [frontend-ip-name]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-t",
                      "long": "--frontend-ip-name",
                      "description": "sets frontend ip configuration. This\n     option is mutually exclusive with --frontend-ip-id"
                    },
                    {
                      "flags": "-s, --frontend-ip-id [frontend-ip-id]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-s",
                      "long": "--frontend-ip-id",
                      "description": "sets frontend ip configuration. This\n     option is mutually exclusive with --frontend-ip-name"
                    },
                    {
                      "flags": "-p, --protocol [protocol]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-p",
                      "long": "--protocol",
                      "description": "the transport protocol for the\n     endpoint. Possible values are 'Udp' or 'Tcp' or 'All.'"
                    },
                    {
                      "flags": "-f, --frontend-port [frontend-port]",
                      "required": 0,
                      "optional": -21,
                      "bool": true,
                      "short": "-f",
                      "long": "--frontend-port",
                      "description": "the port for the external endpoint.\n     Port numbers for each rule must be unique within the Load Balancer. Acceptable\n     values range from 1 to 65534"
                    },
                    {
                      "flags": "-b, --backend-port [backend-port]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-b",
                      "long": "--backend-port",
                      "description": "the port used for the internal\n     endpoint. Acceptable values range from 1 to 65535"
                    },
                    {
                      "flags": "-i, --idle-timeout [idle-timeout]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-i",
                      "long": "--idle-timeout",
                      "description": "the timeout for the TCP idle\n     connection. The value can be set between 4 and 30 minutes. The default value is\n     4 minutes. This element is only used when the protocol is set to TCP"
                    },
                    {
                      "flags": "-e, --enable-floating-ip [enable-floating-ip]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-e",
                      "long": "--enable-floating-ip",
                      "description": "configures a virtual machine's\n     endpoint for the floating IP capability required to configure a SQL AlwaysOn\n     Availability Group. This setting is required when using the SQL AlwaysOn\n     Availability Groups in SQL server. This setting can't be changed after you\n     create the endpoint"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete an inbound nat rule",
                  "fullName": "network lb inbound-nat-rule delete",
                  "usage": "[options] <resource-group> <lb-name> <name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-inboundNatRules.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the inbound nat rule"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show an inbound nat rule",
                  "fullName": "network lb inbound-nat-rule show",
                  "usage": "[options] <resource-group> <lb-name> <name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-inboundNatRules.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the inbound nat rule"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List inbound nat rules",
                  "fullName": "network lb inbound-nat-rule list",
                  "usage": "[options] <resource-group> <lb-name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-inboundNatRules.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "rule": {
              "name": "rule",
              "description": "Commands to manage load balancing rules",
              "fullName": "network lb rule",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a load balancing rule",
                  "fullName": "network lb rule create",
                  "usage": "[options] <resource-group> <lb-name> <name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-loadBalancingRules.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the load balancing rule"
                    },
                    {
                      "flags": "-t, --frontend-ip-name [frontend-ip-name]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-t",
                      "long": "--frontend-ip-name",
                      "description": "sets frontend ip configuration. This\n     option is mutually exclusive with --frontend-ip-id"
                    },
                    {
                      "flags": "-r, --frontend-ip-id [frontend-ip-id]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-r",
                      "long": "--frontend-ip-id",
                      "description": "sets frontend ip configuration. This\n     option is mutually exclusive with --frontend-ip-name"
                    },
                    {
                      "flags": "-o, --backend-address-pool-name [backend-address-pool-name]",
                      "required": 0,
                      "optional": -33,
                      "bool": true,
                      "short": "-o",
                      "long": "--backend-address-pool-name",
                      "description": "sets backend address pool. This option\n     is mutually exclusive with --backend-address-pool-id"
                    },
                    {
                      "flags": "-c, --backend-address-pool-id [backend-address-pool-id]",
                      "required": 0,
                      "optional": -31,
                      "bool": true,
                      "short": "-c",
                      "long": "--backend-address-pool-id",
                      "description": "sets backend address pool. This option\n     is mutually exclusive with --backend-address-pool-name"
                    },
                    {
                      "flags": "-a, --probe-name [probe-name]",
                      "required": 0,
                      "optional": -18,
                      "bool": true,
                      "short": "-a",
                      "long": "--probe-name",
                      "description": "sets probe. This option is mutually\n     exclusive with --probe-id"
                    },
                    {
                      "flags": "-k, --probe-id [probe-id]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-k",
                      "long": "--probe-id",
                      "description": "sets probe. This option is mutually\n     exclusive with --probe-name"
                    },
                    {
                      "flags": "-p, --protocol [protocol]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-p",
                      "long": "--protocol",
                      "description": "the transport protocol for the\n     endpoint. Possible values are 'Udp' or 'Tcp' or 'All.'"
                    },
                    {
                      "flags": "-d, --load-distribution [load-distribution]",
                      "required": 0,
                      "optional": -25,
                      "bool": true,
                      "short": "-d",
                      "long": "--load-distribution",
                      "description": "the load distribution policy for this\n     rule. Possible values are 'Default', 'SourceIP', and 'SourceIPProtocol'"
                    },
                    {
                      "flags": "-f, --frontend-port [frontend-port]",
                      "required": 0,
                      "optional": -21,
                      "bool": true,
                      "short": "-f",
                      "long": "--frontend-port",
                      "description": "the port for the external endpoint.\n     Port numbers for each rule must be unique within the Load Balancer. Acceptable\n     values are between 0 and 65534. Note that value 0 enables \"Any Port\""
                    },
                    {
                      "flags": "-b, --backend-port [backend-port]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-b",
                      "long": "--backend-port",
                      "description": "the port used for internal connections\n     on the endpoint. Acceptable values are between 0 and 65535. Note that value 0\n     enables \"Any Port\""
                    },
                    {
                      "flags": "-i, --idle-timeout [idle-timeout]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-i",
                      "long": "--idle-timeout",
                      "description": "the timeout for the TCP idle\n     connection. The value can be set between 4 and 30 minutes. The default value is\n     4 minutes. This element is only used when the protocol is set to TCP"
                    },
                    {
                      "flags": "-e, --enable-floating-ip [enable-floating-ip]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-e",
                      "long": "--enable-floating-ip",
                      "description": "configures a virtual machine's\n     endpoint for the floating IP capability required to configure a SQL AlwaysOn\n     Availability Group. This setting is required when using the SQL AlwaysOn\n     Availability Groups in SQL server. This setting can't be changed after you\n     create the endpoint"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update a load balancing rule",
                  "fullName": "network lb rule set",
                  "usage": "[options] <resource-group> <lb-name> <name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-loadBalancingRules.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the load balancing rule"
                    },
                    {
                      "flags": "-t, --frontend-ip-name [frontend-ip-name]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-t",
                      "long": "--frontend-ip-name",
                      "description": "sets frontend ip configuration. This\n     option is mutually exclusive with --frontend-ip-id"
                    },
                    {
                      "flags": "-r, --frontend-ip-id [frontend-ip-id]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-r",
                      "long": "--frontend-ip-id",
                      "description": "sets frontend ip configuration. This\n     option is mutually exclusive with --frontend-ip-name"
                    },
                    {
                      "flags": "-o, --backend-address-pool-name [backend-address-pool-name]",
                      "required": 0,
                      "optional": -33,
                      "bool": true,
                      "short": "-o",
                      "long": "--backend-address-pool-name",
                      "description": "sets backend address pool. This option\n     is mutually exclusive with --backend-address-pool-id"
                    },
                    {
                      "flags": "-c, --backend-address-pool-id [backend-address-pool-id]",
                      "required": 0,
                      "optional": -31,
                      "bool": true,
                      "short": "-c",
                      "long": "--backend-address-pool-id",
                      "description": "sets backend address pool. This option\n     is mutually exclusive with --backend-address-pool-name"
                    },
                    {
                      "flags": "-a, --probe-name [probe-name]",
                      "required": 0,
                      "optional": -18,
                      "bool": true,
                      "short": "-a",
                      "long": "--probe-name",
                      "description": "sets probe. This option is mutually\n     exclusive with --probe-id"
                    },
                    {
                      "flags": "-k, --probe-id [probe-id]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-k",
                      "long": "--probe-id",
                      "description": "sets probe. This option is mutually\n     exclusive with --probe-name"
                    },
                    {
                      "flags": "-p, --protocol [protocol]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-p",
                      "long": "--protocol",
                      "description": "the transport protocol for the\n     endpoint. Possible values are 'Udp' or 'Tcp' or 'All.'"
                    },
                    {
                      "flags": "-d, --load-distribution [load-distribution]",
                      "required": 0,
                      "optional": -25,
                      "bool": true,
                      "short": "-d",
                      "long": "--load-distribution",
                      "description": "the load distribution policy for this\n     rule. Possible values are 'Default', 'SourceIP', and 'SourceIPProtocol'"
                    },
                    {
                      "flags": "-f, --frontend-port [frontend-port]",
                      "required": 0,
                      "optional": -21,
                      "bool": true,
                      "short": "-f",
                      "long": "--frontend-port",
                      "description": "the port for the external endpoint.\n     Port numbers for each rule must be unique within the Load Balancer. Acceptable\n     values are between 0 and 65534. Note that value 0 enables \"Any Port\""
                    },
                    {
                      "flags": "-b, --backend-port [backend-port]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-b",
                      "long": "--backend-port",
                      "description": "the port used for internal connections\n     on the endpoint. Acceptable values are between 0 and 65535. Note that value 0\n     enables \"Any Port\""
                    },
                    {
                      "flags": "-i, --idle-timeout [idle-timeout]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-i",
                      "long": "--idle-timeout",
                      "description": "the timeout for the TCP idle\n     connection. The value can be set between 4 and 30 minutes. The default value is\n     4 minutes. This element is only used when the protocol is set to TCP"
                    },
                    {
                      "flags": "-e, --enable-floating-ip [enable-floating-ip]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-e",
                      "long": "--enable-floating-ip",
                      "description": "configures a virtual machine's\n     endpoint for the floating IP capability required to configure a SQL AlwaysOn\n     Availability Group. This setting is required when using the SQL AlwaysOn\n     Availability Groups in SQL server. This setting can't be changed after you\n     create the endpoint"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a load balancing rule",
                  "fullName": "network lb rule delete",
                  "usage": "[options] <resource-group> <lb-name> <name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-loadBalancingRules.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the load balancing rule"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a load balancing rule",
                  "fullName": "network lb rule show",
                  "usage": "[options] <resource-group> <lb-name> <name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-loadBalancingRules.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the load balancing rule"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List load balancing rules",
                  "fullName": "network lb rule list",
                  "usage": "[options] <resource-group> <lb-name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-loadBalancingRules.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "probe": {
              "name": "probe",
              "description": "Commands to manage probes",
              "fullName": "network lb probe",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a probe",
                  "fullName": "network lb probe create",
                  "usage": "[options] <resource-group> <lb-name> <name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-probes.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the probe"
                    },
                    {
                      "flags": "-o, --port [port]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-o",
                      "long": "--port",
                      "description": "the port for communicating the probe.\n     Possible values range from 1 to 65535, inclusive"
                    },
                    {
                      "flags": "-i, --interval [interval]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-i",
                      "long": "--interval",
                      "description": "the interval, in seconds, for how\n     frequently to probe the endpoint for health status. Typically, the interval is\n     slightly less than half the allocated timeout period (in seconds) which allows\n     two full probes before taking the instance out of rotation. The default value\n     is 15, the minimum value is 5"
                    },
                    {
                      "flags": "-c, --count [count]",
                      "required": 0,
                      "optional": -13,
                      "bool": true,
                      "short": "-c",
                      "long": "--count",
                      "description": "the number of probes where if no\n     response, will result in stopping further traffic from being delivered to the\n     endpoint. This values allows endpoints to be taken out of rotation faster or\n     slower than the typical times used in Azure"
                    },
                    {
                      "flags": "-f, --path [path]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-f",
                      "long": "--path",
                      "description": "the URI used for requesting health\n     status from the VM. Path is required if a protocol is set to http. Otherwise,\n     it is not allowed. There is no default value"
                    },
                    {
                      "flags": "-p, --protocol [protocol]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-p",
                      "long": "--protocol",
                      "description": "the protocol of the end point. Possible\n     values are: 'Http' or 'Tcp'. If 'Tcp' is specified, a received ACK is\n     required for the probe to be successful. If 'Http' is specified, a 200 OK\n     response from the specifies URI is required for the probe to be successful"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update a probe",
                  "fullName": "network lb probe set",
                  "usage": "[options] <resource-group> <lb-name> <name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-probes.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the probe"
                    },
                    {
                      "flags": "-o, --port [port]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-o",
                      "long": "--port",
                      "description": "the port for communicating the probe.\n     Possible values range from 1 to 65535, inclusive"
                    },
                    {
                      "flags": "-i, --interval [interval]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-i",
                      "long": "--interval",
                      "description": "the interval, in seconds, for how\n     frequently to probe the endpoint for health status. Typically, the interval is\n     slightly less than half the allocated timeout period (in seconds) which allows\n     two full probes before taking the instance out of rotation. The default value\n     is 15, the minimum value is 5"
                    },
                    {
                      "flags": "-c, --count [count]",
                      "required": 0,
                      "optional": -13,
                      "bool": true,
                      "short": "-c",
                      "long": "--count",
                      "description": "the number of probes where if no\n     response, will result in stopping further traffic from being delivered to the\n     endpoint. This values allows endpoints to be taken out of rotation faster or\n     slower than the typical times used in Azure"
                    },
                    {
                      "flags": "-f, --path [path]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-f",
                      "long": "--path",
                      "description": "the URI used for requesting health\n     status from the VM. Path is required if a protocol is set to http. Otherwise,\n     it is not allowed. There is no default value"
                    },
                    {
                      "flags": "-p, --protocol [protocol]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-p",
                      "long": "--protocol",
                      "description": "the protocol of the end point. Possible\n     values are: 'Http' or 'Tcp'. If 'Tcp' is specified, a received ACK is\n     required for the probe to be successful. If 'Http' is specified, a 200 OK\n     response from the specifies URI is required for the probe to be successful"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a probe",
                  "fullName": "network lb probe delete",
                  "usage": "[options] <resource-group> <lb-name> <name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-probes.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the probe"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a probe",
                  "fullName": "network lb probe show",
                  "usage": "[options] <resource-group> <lb-name> <name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-probes.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the probe"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List probes",
                  "fullName": "network lb probe list",
                  "usage": "[options] <resource-group> <lb-name>",
                  "filePath": "commands/arm/network.generated/LoadBalancers-probes.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-l, --lb-name <lb-name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--lb-name",
                      "description": "the lb name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "nic": {
          "name": "nic",
          "description": "Commands to manage network interfaces",
          "fullName": "network nic",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a network interface",
              "fullName": "network nic create",
              "usage": "[options] <resource-group> <name> <location>",
              "filePath": "commands/arm/network.generated/networkInterfaces.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the network interface"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-w, --network-security-group-id [network-security-group-id]",
                  "required": 0,
                  "optional": -33,
                  "bool": true,
                  "short": "-w",
                  "long": "--network-security-group-id",
                  "description": "sets network security group id. This\n     option is mutually exclusive with --network-security-group-name"
                },
                {
                  "flags": "-o, --network-security-group-name [network-security-group-name]",
                  "required": 0,
                  "optional": -35,
                  "bool": true,
                  "short": "-o",
                  "long": "--network-security-group-name",
                  "description": "sets network security group name. This\n     option is mutually exclusive with --network-security-group-id"
                },
                {
                  "flags": "-d, --lb-address-pool-ids [lb-address-pool-ids]",
                  "required": 0,
                  "optional": -27,
                  "bool": true,
                  "short": "-d",
                  "long": "--lb-address-pool-ids",
                  "description": "the reference of\n     LoadBalancerBackendAddressPool resource"
                },
                {
                  "flags": "-e, --lb-inbound-nat-rule-ids [lb-inbound-nat-rule-ids]",
                  "required": 0,
                  "optional": -31,
                  "bool": true,
                  "short": "-e",
                  "long": "--lb-inbound-nat-rule-ids",
                  "description": "a list of references of\n     LoadBalancerInboundNatRules"
                },
                {
                  "flags": "-a, --private-ip-address [private-ip-address]",
                  "required": 0,
                  "optional": -26,
                  "bool": true,
                  "short": "-a",
                  "long": "--private-ip-address",
                  "description": "private IP address of the IP\n     configuration"
                },
                {
                  "flags": "-b, --private-ip-version [private-ip-version]",
                  "required": 0,
                  "optional": -26,
                  "bool": true,
                  "short": "-b",
                  "long": "--private-ip-version",
                  "description": "available from Api-Version 2016-03-30\n     onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6.\n     Default is taken as IPv4.  Possible values are: 'IPv4' and 'IPv6'"
                },
                {
                  "flags": "-k, --subnet-name [subnet-name]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-k",
                  "long": "--subnet-name",
                  "description": "sets subnet name. This option is\n     mutually exclusive with --subnet-id"
                },
                {
                  "flags": "-m, --subnet-vnet-name [subnet-vnet-name]",
                  "required": 0,
                  "optional": -24,
                  "bool": true,
                  "short": "-m",
                  "long": "--subnet-vnet-name",
                  "description": "name of the virtual network that contains subnet"
                },
                {
                  "flags": "-u, --subnet-id [subnet-id]",
                  "required": 0,
                  "optional": -17,
                  "bool": true,
                  "short": "-u",
                  "long": "--subnet-id",
                  "description": "sets subnet id. This option is mutually\n     exclusive with --subnet-name"
                },
                {
                  "flags": "-i, --public-ip-id [public-ip-id]",
                  "required": 0,
                  "optional": -20,
                  "bool": true,
                  "short": "-i",
                  "long": "--public-ip-id",
                  "description": "sets public ip address id. This option\n     is mutually exclusive with --public-ip-name"
                },
                {
                  "flags": "-p, --public-ip-name [public-ip-name]",
                  "required": 0,
                  "optional": -22,
                  "bool": true,
                  "short": "-p",
                  "long": "--public-ip-name",
                  "description": "sets public ip address name. This\n     option is mutually exclusive with --public-ip-id"
                },
                {
                  "flags": "--application-security-groups [application-security-groups]",
                  "required": 0,
                  "optional": -31,
                  "bool": true,
                  "long": "--application-security-groups",
                  "description": "application security groups in which\n     the IP configuration is included"
                },
                {
                  "flags": "-c, --ip-config-name [ip-config-name]",
                  "required": 0,
                  "optional": -22,
                  "bool": true,
                  "short": "-c",
                  "long": "--ip-config-name",
                  "description": "sets ip configurations name"
                },
                {
                  "flags": "-r, --internal-dns-name-label [internal-dns-name-label]",
                  "required": 0,
                  "optional": -31,
                  "bool": true,
                  "short": "-r",
                  "long": "--internal-dns-name-label",
                  "description": "relative DNS name for this NIC used for\n     internal communications between VMs in the same virtual network"
                },
                {
                  "flags": "-j, --enable-accelerated-networking [enable-accelerated-networking]",
                  "required": 0,
                  "optional": -37,
                  "bool": true,
                  "short": "-j",
                  "long": "--enable-accelerated-networking",
                  "description": "if the network interface is accelerated\n     networking enabled"
                },
                {
                  "flags": "-f, --enable-ip-forwarding [enable-ip-forwarding]",
                  "required": 0,
                  "optional": -28,
                  "bool": true,
                  "short": "-f",
                  "long": "--enable-ip-forwarding",
                  "description": "indicates whether IP forwarding is\n     enabled on this network interface"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "set",
              "description": "Update a network interface",
              "fullName": "network nic set",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/networkInterfaces.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the network interface"
                },
                {
                  "flags": "-w, --network-security-group-id [network-security-group-id]",
                  "required": 0,
                  "optional": -33,
                  "bool": true,
                  "short": "-w",
                  "long": "--network-security-group-id",
                  "description": "sets network security group id. This\n     option is mutually exclusive with --network-security-group-name"
                },
                {
                  "flags": "-o, --network-security-group-name [network-security-group-name]",
                  "required": 0,
                  "optional": -35,
                  "bool": true,
                  "short": "-o",
                  "long": "--network-security-group-name",
                  "description": "sets network security group name. This\n     option is mutually exclusive with --network-security-group-id"
                },
                {
                  "flags": "--application-security-groups [application-security-groups]",
                  "required": 0,
                  "optional": -31,
                  "bool": true,
                  "long": "--application-security-groups",
                  "description": "application security groups in which\n     the IP configuration is included"
                },
                {
                  "flags": "-r, --internal-dns-name-label [internal-dns-name-label]",
                  "required": 0,
                  "optional": -31,
                  "bool": true,
                  "short": "-r",
                  "long": "--internal-dns-name-label",
                  "description": "relative DNS name for this NIC used for\n     internal communications between VMs in the same virtual network"
                },
                {
                  "flags": "-j, --enable-accelerated-networking [enable-accelerated-networking]",
                  "required": 0,
                  "optional": -37,
                  "bool": true,
                  "short": "-j",
                  "long": "--enable-accelerated-networking",
                  "description": "if the network interface is accelerated\n     networking enabled"
                },
                {
                  "flags": "-f, --enable-ip-forwarding [enable-ip-forwarding]",
                  "required": 0,
                  "optional": -28,
                  "bool": true,
                  "short": "-f",
                  "long": "--enable-ip-forwarding",
                  "description": "indicates whether IP forwarding is\n     enabled on this network interface"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a network interface",
              "fullName": "network nic delete",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/networkInterfaces.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the network interface"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode, do not ask for delete confirmation"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list",
              "description": "Get all network interfaces",
              "fullName": "network nic list",
              "usage": "[options] [resource-group]",
              "filePath": "commands/arm/network/network.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group [resource-group]",
                  "required": 0,
                  "optional": -22,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-m, --virtual-machine-scale-set-name [virtual-machine-scale-set-name]",
                  "required": 0,
                  "optional": -38,
                  "bool": true,
                  "short": "-m",
                  "long": "--virtual-machine-scale-set-name",
                  "description": "the name of the virtual machine scale set"
                },
                {
                  "flags": "-i, --virtual-machine-index [virtual-machine-index]",
                  "required": 0,
                  "optional": -29,
                  "bool": true,
                  "short": "-i",
                  "long": "--virtual-machine-index",
                  "description": "the index of the virtual machine in scale set"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Get a network interface",
              "fullName": "network nic show",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network/network.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the network interface"
                },
                {
                  "flags": "-m, --virtual-machine-scale-set-name [virtual-machine-scale-set-name]",
                  "required": 0,
                  "optional": -38,
                  "bool": true,
                  "short": "-m",
                  "long": "--virtual-machine-scale-set-name",
                  "description": "the name of the virtual machine scale set"
                },
                {
                  "flags": "-i, --virtual-machine-index [virtual-machine-index]",
                  "required": 0,
                  "optional": -29,
                  "bool": true,
                  "short": "-i",
                  "long": "--virtual-machine-index",
                  "description": "the index of virtual machine in scale set"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {
            "ip-config": {
              "name": "ip-config",
              "description": "Commands to manage network interface ip configurations",
              "fullName": "network nic ip-config",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create an ip configuration",
                  "fullName": "network nic ip-config create",
                  "usage": "[options] <resource-group> <nic-name> <name>",
                  "filePath": "commands/arm/network.generated/NetworkInterfaces-ipConfigurations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-c, --nic-name <nic-name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--nic-name",
                      "description": "the nic name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the ip configuration"
                    },
                    {
                      "flags": "-d, --lb-address-pool-ids [lb-address-pool-ids]",
                      "required": 0,
                      "optional": -27,
                      "bool": true,
                      "short": "-d",
                      "long": "--lb-address-pool-ids",
                      "description": "the reference of\n     LoadBalancerBackendAddressPool resource"
                    },
                    {
                      "flags": "-e, --lb-inbound-nat-rule-ids [lb-inbound-nat-rule-ids]",
                      "required": 0,
                      "optional": -31,
                      "bool": true,
                      "short": "-e",
                      "long": "--lb-inbound-nat-rule-ids",
                      "description": "a list of references of\n     LoadBalancerInboundNatRules"
                    },
                    {
                      "flags": "-a, --private-ip-address [private-ip-address]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-a",
                      "long": "--private-ip-address",
                      "description": "private IP address of the IP\n     configuration"
                    },
                    {
                      "flags": "-b, --private-ip-version [private-ip-version]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-b",
                      "long": "--private-ip-version",
                      "description": "available from Api-Version 2016-03-30\n     onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6.\n     Default is taken as IPv4.  Possible values are: 'IPv4' and 'IPv6'"
                    },
                    {
                      "flags": "-k, --subnet-name [subnet-name]",
                      "required": 0,
                      "optional": -19,
                      "bool": true,
                      "short": "-k",
                      "long": "--subnet-name",
                      "description": "sets subnet name. This option is\n     mutually exclusive with --subnet-id"
                    },
                    {
                      "flags": "-m, --subnet-vnet-name [subnet-vnet-name]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-m",
                      "long": "--subnet-vnet-name",
                      "description": "name of the virtual network that contains subnet"
                    },
                    {
                      "flags": "-u, --subnet-id [subnet-id]",
                      "required": 0,
                      "optional": -17,
                      "bool": true,
                      "short": "-u",
                      "long": "--subnet-id",
                      "description": "sets subnet id. This option is mutually\n     exclusive with --subnet-name"
                    },
                    {
                      "flags": "-y, --is-primary [is-primary]",
                      "required": 0,
                      "optional": -18,
                      "bool": true,
                      "short": "-y",
                      "long": "--is-primary",
                      "description": "gets whether this is a primary customer\n     address on the network interface"
                    },
                    {
                      "flags": "-i, --public-ip-id [public-ip-id]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-i",
                      "long": "--public-ip-id",
                      "description": "sets public ip address id. This option\n     is mutually exclusive with --public-ip-name"
                    },
                    {
                      "flags": "-p, --public-ip-name [public-ip-name]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-p",
                      "long": "--public-ip-name",
                      "description": "sets public ip address name. This\n     option is mutually exclusive with --public-ip-id"
                    },
                    {
                      "flags": "--application-security-groups [application-security-groups]",
                      "required": 0,
                      "optional": -31,
                      "bool": true,
                      "long": "--application-security-groups",
                      "description": "application security groups in which\n     the IP configuration is included"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for change primary IP config confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update an ip configuration",
                  "fullName": "network nic ip-config set",
                  "usage": "[options] <resource-group> <nic-name> <name>",
                  "filePath": "commands/arm/network.generated/NetworkInterfaces-ipConfigurations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-c, --nic-name <nic-name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--nic-name",
                      "description": "the nic name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the ip configuration"
                    },
                    {
                      "flags": "-d, --lb-address-pool-ids [lb-address-pool-ids]",
                      "required": 0,
                      "optional": -27,
                      "bool": true,
                      "short": "-d",
                      "long": "--lb-address-pool-ids",
                      "description": "the reference of\n     LoadBalancerBackendAddressPool resource"
                    },
                    {
                      "flags": "-e, --lb-inbound-nat-rule-ids [lb-inbound-nat-rule-ids]",
                      "required": 0,
                      "optional": -31,
                      "bool": true,
                      "short": "-e",
                      "long": "--lb-inbound-nat-rule-ids",
                      "description": "a list of references of\n     LoadBalancerInboundNatRules"
                    },
                    {
                      "flags": "-a, --private-ip-address [private-ip-address]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-a",
                      "long": "--private-ip-address",
                      "description": "private IP address of the IP\n     configuration"
                    },
                    {
                      "flags": "-b, --private-ip-version [private-ip-version]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-b",
                      "long": "--private-ip-version",
                      "description": "available from Api-Version 2016-03-30\n     onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6.\n     Default is taken as IPv4.  Possible values are: 'IPv4' and 'IPv6'"
                    },
                    {
                      "flags": "-k, --subnet-name [subnet-name]",
                      "required": 0,
                      "optional": -19,
                      "bool": true,
                      "short": "-k",
                      "long": "--subnet-name",
                      "description": "sets subnet name. This option is\n     mutually exclusive with --subnet-id"
                    },
                    {
                      "flags": "-m, --subnet-vnet-name [subnet-vnet-name]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-m",
                      "long": "--subnet-vnet-name",
                      "description": "name of the virtual network that contains subnet"
                    },
                    {
                      "flags": "-u, --subnet-id [subnet-id]",
                      "required": 0,
                      "optional": -17,
                      "bool": true,
                      "short": "-u",
                      "long": "--subnet-id",
                      "description": "sets subnet id. This option is mutually\n     exclusive with --subnet-name"
                    },
                    {
                      "flags": "-y, --is-primary [is-primary]",
                      "required": 0,
                      "optional": -18,
                      "bool": true,
                      "short": "-y",
                      "long": "--is-primary",
                      "description": "gets whether this is a primary customer\n     address on the network interface"
                    },
                    {
                      "flags": "-i, --public-ip-id [public-ip-id]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-i",
                      "long": "--public-ip-id",
                      "description": "sets public ip address id. This option\n     is mutually exclusive with --public-ip-name"
                    },
                    {
                      "flags": "-p, --public-ip-name [public-ip-name]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-p",
                      "long": "--public-ip-name",
                      "description": "sets public ip address name. This\n     option is mutually exclusive with --public-ip-id"
                    },
                    {
                      "flags": "--application-security-groups [application-security-groups]",
                      "required": 0,
                      "optional": -31,
                      "bool": true,
                      "long": "--application-security-groups",
                      "description": "application security groups in which\n     the IP configuration is included"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete an ip configuration",
                  "fullName": "network nic ip-config delete",
                  "usage": "[options] <resource-group> <nic-name> <name>",
                  "filePath": "commands/arm/network.generated/NetworkInterfaces-ipConfigurations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-c, --nic-name <nic-name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--nic-name",
                      "description": "the nic name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the ip configuration"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show an ip configuration",
                  "fullName": "network nic ip-config show",
                  "usage": "[options] <resource-group> <nic-name> <name>",
                  "filePath": "commands/arm/network.generated/NetworkInterfaces-ipConfigurations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-c, --nic-name <nic-name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--nic-name",
                      "description": "the nic name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the ip configuration"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List ip configurations",
                  "fullName": "network nic ip-config list",
                  "usage": "[options] <resource-group> <nic-name>",
                  "filePath": "commands/arm/network.generated/NetworkInterfaces-ipConfigurations.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-c, --nic-name <nic-name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--nic-name",
                      "description": "the nic name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {
                "address-pool": {
                  "name": "address-pool",
                  "description": "Commands to manage backend address pools of the network interface ip configuration",
                  "fullName": "network nic ip-config address-pool",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "create",
                      "description": "Add a backend address pool to a NIC ip configuration",
                      "fullName": "network nic ip-config address-pool create",
                      "usage": "[options] <resource-group> <nic-name> <ip-config-name>",
                      "filePath": "commands/arm/network/network.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-g, --resource-group <resource-group>",
                          "required": -22,
                          "optional": 0,
                          "bool": true,
                          "short": "-g",
                          "long": "--resource-group",
                          "description": "the name of the resource group"
                        },
                        {
                          "flags": "-c, --nic-name <nic-name>",
                          "required": -16,
                          "optional": 0,
                          "bool": true,
                          "short": "-c",
                          "long": "--nic-name",
                          "description": "the name of the network interface"
                        },
                        {
                          "flags": "-n, --ip-config-name <ip-config-name>",
                          "required": -22,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--ip-config-name",
                          "description": "the name of ip configuration"
                        },
                        {
                          "flags": "-i, --lb-address-pool-id [lb-address-pool-id]",
                          "required": 0,
                          "optional": -26,
                          "bool": true,
                          "short": "-i",
                          "long": "--lb-address-pool-id",
                          "description": "the load balancer backend address pool identifier\n   e.g. /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/loadbalancers/<lb-name>/backendAddressPools/<address-pool-name>"
                        },
                        {
                          "flags": "-l, --lb-name [lb-name]",
                          "required": 0,
                          "optional": -15,
                          "bool": true,
                          "short": "-l",
                          "long": "--lb-name",
                          "description": "the load balancer name.\n   This load balancer must exists in the same resource group as the NIC."
                        },
                        {
                          "flags": "-a, --lb-address-pool-name [lb-address-pool-name]",
                          "required": 0,
                          "optional": -28,
                          "bool": true,
                          "short": "-a",
                          "long": "--lb-address-pool-name",
                          "description": "the name of the address pool that exists in the load balancer\n   Please use --lb-address-pool-id if that is not the case."
                        },
                        {
                          "flags": "-s, --subscription <subscription>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    },
                    {
                      "name": "delete",
                      "description": "Delete a backend address pool from a NIC ip configuration",
                      "fullName": "network nic ip-config address-pool delete",
                      "usage": "[options] <resource-group> <nic-name> <ip-config-name>",
                      "filePath": "commands/arm/network/network.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-g, --resource-group <resource-group>",
                          "required": -22,
                          "optional": 0,
                          "bool": true,
                          "short": "-g",
                          "long": "--resource-group",
                          "description": "the name of the resource group"
                        },
                        {
                          "flags": "-c, --nic-name <nic-name>",
                          "required": -16,
                          "optional": 0,
                          "bool": true,
                          "short": "-c",
                          "long": "--nic-name",
                          "description": "the name of the network interface"
                        },
                        {
                          "flags": "-n, --ip-config-name <ip-config-name>",
                          "required": -22,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--ip-config-name",
                          "description": "the name of ip configuration"
                        },
                        {
                          "flags": "-i, --lb-address-pool-id [lb-address-pool-id]",
                          "required": 0,
                          "optional": -26,
                          "bool": true,
                          "short": "-i",
                          "long": "--lb-address-pool-id",
                          "description": "the load balancer backend address pool identifier\n   e.g. /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/loadbalancers/<lb-name>/backendAddressPools/<address-pool-name>"
                        },
                        {
                          "flags": "-l, --lb-name [lb-name]",
                          "required": 0,
                          "optional": -15,
                          "bool": true,
                          "short": "-l",
                          "long": "--lb-name",
                          "description": "the load balancer name.\n   This load balancer must exists in the same resource group as the NIC."
                        },
                        {
                          "flags": "-a, --lb-address-pool-name [lb-address-pool-name]",
                          "required": 0,
                          "optional": -28,
                          "bool": true,
                          "short": "-a",
                          "long": "--lb-address-pool-name",
                          "description": "the name of the address pool that exists in the load balancer\n   Please use --lb-address-pool-id if that is not the case."
                        },
                        {
                          "flags": "-s, --subscription <subscription>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    }
                  ],
                  "categories": {}
                },
                "inbound-nat-rule": {
                  "name": "inbound-nat-rule",
                  "description": "Commands to manage inbound NAT rules of the network interface ip configuration",
                  "fullName": "network nic ip-config inbound-nat-rule",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "create",
                      "description": "Add an inbound NAT rule to a NIC ip configuration",
                      "fullName": "network nic ip-config inbound-nat-rule create",
                      "usage": "[options] <resource-group> <nic-name> <ip-config-name>",
                      "filePath": "commands/arm/network/network.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-g, --resource-group <resource-group>",
                          "required": -22,
                          "optional": 0,
                          "bool": true,
                          "short": "-g",
                          "long": "--resource-group",
                          "description": "the name of the resource group"
                        },
                        {
                          "flags": "-c, --nic-name <nic-name>",
                          "required": -16,
                          "optional": 0,
                          "bool": true,
                          "short": "-c",
                          "long": "--nic-name",
                          "description": "the name of the network interface"
                        },
                        {
                          "flags": "-n, --ip-config-name <ip-config-name>",
                          "required": -22,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--ip-config-name",
                          "description": "the name of ip configuration"
                        },
                        {
                          "flags": "-i, --lb-inbound-nat-rule-id [lb-inbound-nat-rule-id]",
                          "required": 0,
                          "optional": -30,
                          "bool": true,
                          "short": "-i",
                          "long": "--lb-inbound-nat-rule-id",
                          "description": "the inbound NAT rule identifier.\n   e.g. /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/loadbalancers/<lb-name>/inboundNatRules/<nat-rule-name>"
                        },
                        {
                          "flags": "-l, --lb-name [lb-name]",
                          "required": 0,
                          "optional": -15,
                          "bool": true,
                          "short": "-l",
                          "long": "--lb-name",
                          "description": "the load balancer name.\n   This load balancer must exists in the same resource group as the NIC."
                        },
                        {
                          "flags": "-r, --lb-inbound-nat-rule-name [lb-inbound-nat-rule-name]",
                          "required": 0,
                          "optional": -32,
                          "bool": true,
                          "short": "-r",
                          "long": "--lb-inbound-nat-rule-name",
                          "description": "the name of the inbound NAT rule that exists in the load balancer.\n   Please use --inbound-nat-rule-id if that is not the case."
                        },
                        {
                          "flags": "-s, --subscription <subscription>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    },
                    {
                      "name": "delete",
                      "description": "Delete an inbound NAT rule from a NIC ip configuration",
                      "fullName": "network nic ip-config inbound-nat-rule delete",
                      "usage": "[options] <resource-group> <nic-name> <ip-config-name>",
                      "filePath": "commands/arm/network/network.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "-vv",
                          "description": "more verbose with debug output"
                        },
                        {
                          "flags": "--json",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "long": "--json",
                          "description": "use json output"
                        },
                        {
                          "flags": "-g, --resource-group <resource-group>",
                          "required": -22,
                          "optional": 0,
                          "bool": true,
                          "short": "-g",
                          "long": "--resource-group",
                          "description": "the name of the resource group"
                        },
                        {
                          "flags": "-c, --nic-name <nic-name>",
                          "required": -16,
                          "optional": 0,
                          "bool": true,
                          "short": "-c",
                          "long": "--nic-name",
                          "description": "the name of the network interface"
                        },
                        {
                          "flags": "-n, --ip-config-name <ip-config-name>",
                          "required": -22,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--ip-config-name",
                          "description": "the name of ip configuration"
                        },
                        {
                          "flags": "-i, --lb-inbound-nat-rule-id [lb-inbound-nat-rule-id]",
                          "required": 0,
                          "optional": -30,
                          "bool": true,
                          "short": "-i",
                          "long": "--lb-inbound-nat-rule-id",
                          "description": "the inbound NAT rule identifier.\n   e.g. /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/loadbalancers/<lb-name>/inboundNatRules/<nat-rule-name>"
                        },
                        {
                          "flags": "-l, --lb-name [lb-name]",
                          "required": 0,
                          "optional": -15,
                          "bool": true,
                          "short": "-l",
                          "long": "--lb-name",
                          "description": "the load balancer name.\n   This load balancer must exists in the same resource group as the NIC."
                        },
                        {
                          "flags": "-r, --lb-inbound-nat-rule-name [lb-inbound-nat-rule-name]",
                          "required": 0,
                          "optional": -32,
                          "bool": true,
                          "short": "-r",
                          "long": "--lb-inbound-nat-rule-name",
                          "description": "the name of the inbound NAT rule that exists in the load balancer.\n   Please use --inbound-nat-rule-id if that is not the case."
                        },
                        {
                          "flags": "-s, --subscription <subscription>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    }
                  ],
                  "categories": {}
                }
              }
            },
            "effective-route-table": {
              "name": "effective-route-table",
              "description": "Commands to manage effective route table",
              "fullName": "network nic effective-route-table",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Perform show operation on a network interface",
                  "fullName": "network nic effective-route-table show",
                  "usage": "[options] <resource-group> <nic-name>",
                  "filePath": "commands/arm/network.generated/networkInterfaces.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-c, --nic-name <nic-name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--nic-name",
                      "description": "the nic name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "effective-nsg": {
              "name": "effective-nsg",
              "description": "Commands to manage effective nsg",
              "fullName": "network nic effective-nsg",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "Perform list operation on a network interface",
                  "fullName": "network nic effective-nsg list",
                  "usage": "[options] <resource-group> <nic-name>",
                  "filePath": "commands/arm/network.generated/networkInterfaces.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-c, --nic-name <nic-name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--nic-name",
                      "description": "the nic name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "nsg": {
          "name": "nsg",
          "description": "Commands to manage network security groups",
          "fullName": "network nsg",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a network security group",
              "fullName": "network nsg create",
              "usage": "[options] <resource-group> <name> <location>",
              "filePath": "commands/arm/network.generated/networkSecurityGroups.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the network security group"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "set",
              "description": "Update a network security group",
              "fullName": "network nsg set",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/networkSecurityGroups.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the network security group"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a network security group",
              "fullName": "network nsg delete",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/networkSecurityGroups.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the network security group"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode, do not ask for delete confirmation"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show a network security group",
              "fullName": "network nsg show",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/networkSecurityGroups.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the network security group"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list",
              "description": "List network security groups",
              "fullName": "network nsg list",
              "usage": "[options] <resource-group>",
              "filePath": "commands/arm/network.generated/networkSecurityGroups.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group [resource-group]",
                  "required": 0,
                  "optional": -22,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {
            "rule": {
              "name": "rule",
              "description": "Commands to manage security rules",
              "fullName": "network nsg rule",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a security rule",
                  "fullName": "network nsg rule create",
                  "usage": "[options] <resource-group> <nsg-name> <name> <priority>",
                  "filePath": "commands/arm/network.generated/NetworkSecurityGroups-securityRules.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-a, --nsg-name <nsg-name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--nsg-name",
                      "description": "the nsg name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the security rule"
                    },
                    {
                      "flags": "-d, --description [description]",
                      "required": 0,
                      "optional": -19,
                      "bool": true,
                      "short": "-d",
                      "long": "--description",
                      "description": "a description for this rule. Restricted\n     to 140 chars"
                    },
                    {
                      "flags": "-p, --protocol [protocol]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-p",
                      "long": "--protocol",
                      "description": "network protocol this rule applies to.\n     Possible values are 'Tcp', 'Udp', and '*'"
                    },
                    {
                      "flags": "-o, --source-port-range [source-port-range]",
                      "required": 0,
                      "optional": -25,
                      "bool": true,
                      "short": "-o",
                      "long": "--source-port-range",
                      "description": "the source port or range. Integer or\n     range between 0 and 65535. Asterix '*' can also be used to match all ports"
                    },
                    {
                      "flags": "-u, --destination-port-range [destination-port-range]",
                      "required": 0,
                      "optional": -30,
                      "bool": true,
                      "short": "-u",
                      "long": "--destination-port-range",
                      "description": "the destination port or range. Integer\n     or range between 0 and 65535. Asterix '*' can also be used to match all ports"
                    },
                    {
                      "flags": "-f, --source-address-prefix [source-address-prefix]",
                      "required": 0,
                      "optional": -29,
                      "bool": true,
                      "short": "-f",
                      "long": "--source-address-prefix",
                      "description": "the CIDR or source IP range. Asterix\n     '*' can also be used to match all source IPs. Default tags such as\n     'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used. If\n     this is an ingress rule, specifies where network traffic originates from"
                    },
                    {
                      "flags": "--source-address-prefixes [source-address-prefixes]",
                      "required": 0,
                      "optional": -27,
                      "bool": true,
                      "long": "--source-address-prefixes",
                      "description": "the CIDR or source IP ranges"
                    },
                    {
                      "flags": "--source-application-security-groups [source-application-security-groups]",
                      "required": 0,
                      "optional": -38,
                      "bool": true,
                      "long": "--source-application-security-groups",
                      "description": "the application security group\n     specified as source"
                    },
                    {
                      "flags": "-e, --destination-address-prefix [destination-address-prefix]",
                      "required": 0,
                      "optional": -34,
                      "bool": true,
                      "short": "-e",
                      "long": "--destination-address-prefix",
                      "description": "the destination address prefix. CIDR or\n     destination IP range. Asterix '*' can also be used to match all source IPs.\n     Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet'\n     can also be used"
                    },
                    {
                      "flags": "--destination-address-prefixes [destination-address-prefixes]",
                      "required": 0,
                      "optional": -32,
                      "bool": true,
                      "long": "--destination-address-prefixes",
                      "description": "the destination address prefixes. CIDR\n     or destination IP ranges"
                    },
                    {
                      "flags": "--destination-application-security-groups [destination-application-security-groups]",
                      "required": 0,
                      "optional": -43,
                      "bool": true,
                      "long": "--destination-application-security-groups",
                      "description": "the application security group\n     specified as destination"
                    },
                    {
                      "flags": "--source-port-ranges [source-port-ranges]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "long": "--source-port-ranges",
                      "description": "the source port ranges"
                    },
                    {
                      "flags": "--destination-port-ranges [destination-port-ranges]",
                      "required": 0,
                      "optional": -27,
                      "bool": true,
                      "long": "--destination-port-ranges",
                      "description": "the destination port ranges"
                    },
                    {
                      "flags": "-c, --access [access]",
                      "required": 0,
                      "optional": -14,
                      "bool": true,
                      "short": "-c",
                      "long": "--access",
                      "description": "the network traffic is allowed or\n     denied. Possible values are: 'Allow' and 'Deny'"
                    },
                    {
                      "flags": "-y, --priority <priority>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-y",
                      "long": "--priority",
                      "description": "the priority of the rule. The value can\n     be between 100 and 4096. The priority number must be unique for each rule in\n     the collection. The lower the priority number, the higher the priority of the\n     rule"
                    },
                    {
                      "flags": "-r, --direction [direction]",
                      "required": 0,
                      "optional": -17,
                      "bool": true,
                      "short": "-r",
                      "long": "--direction",
                      "description": "the direction of the rule. The\n     direction specifies if rule will be evaluated on incoming or outcoming traffic.\n     Possible values are: 'Inbound' and 'Outbound'"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update a security rule",
                  "fullName": "network nsg rule set",
                  "usage": "[options] <resource-group> <nsg-name> <name>",
                  "filePath": "commands/arm/network.generated/NetworkSecurityGroups-securityRules.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-a, --nsg-name <nsg-name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--nsg-name",
                      "description": "the nsg name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the security rule"
                    },
                    {
                      "flags": "-d, --description [description]",
                      "required": 0,
                      "optional": -19,
                      "bool": true,
                      "short": "-d",
                      "long": "--description",
                      "description": "a description for this rule. Restricted\n     to 140 chars"
                    },
                    {
                      "flags": "-p, --protocol [protocol]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-p",
                      "long": "--protocol",
                      "description": "network protocol this rule applies to.\n     Possible values are 'Tcp', 'Udp', and '*'"
                    },
                    {
                      "flags": "-o, --source-port-range [source-port-range]",
                      "required": 0,
                      "optional": -25,
                      "bool": true,
                      "short": "-o",
                      "long": "--source-port-range",
                      "description": "the source port or range. Integer or\n     range between 0 and 65535. Asterix '*' can also be used to match all ports"
                    },
                    {
                      "flags": "-u, --destination-port-range [destination-port-range]",
                      "required": 0,
                      "optional": -30,
                      "bool": true,
                      "short": "-u",
                      "long": "--destination-port-range",
                      "description": "the destination port or range. Integer\n     or range between 0 and 65535. Asterix '*' can also be used to match all ports"
                    },
                    {
                      "flags": "-f, --source-address-prefix [source-address-prefix]",
                      "required": 0,
                      "optional": -29,
                      "bool": true,
                      "short": "-f",
                      "long": "--source-address-prefix",
                      "description": "the CIDR or source IP range. Asterix\n     '*' can also be used to match all source IPs. Default tags such as\n     'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used. If\n     this is an ingress rule, specifies where network traffic originates from"
                    },
                    {
                      "flags": "--source-address-prefixes [source-address-prefixes]",
                      "required": 0,
                      "optional": -27,
                      "bool": true,
                      "long": "--source-address-prefixes",
                      "description": "the CIDR or source IP ranges"
                    },
                    {
                      "flags": "--source-application-security-groups [source-application-security-groups]",
                      "required": 0,
                      "optional": -38,
                      "bool": true,
                      "long": "--source-application-security-groups",
                      "description": "the application security group\n     specified as source"
                    },
                    {
                      "flags": "-e, --destination-address-prefix [destination-address-prefix]",
                      "required": 0,
                      "optional": -34,
                      "bool": true,
                      "short": "-e",
                      "long": "--destination-address-prefix",
                      "description": "the destination address prefix. CIDR or\n     destination IP range. Asterix '*' can also be used to match all source IPs.\n     Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet'\n     can also be used"
                    },
                    {
                      "flags": "--destination-address-prefixes [destination-address-prefixes]",
                      "required": 0,
                      "optional": -32,
                      "bool": true,
                      "long": "--destination-address-prefixes",
                      "description": "the destination address prefixes. CIDR\n     or destination IP ranges"
                    },
                    {
                      "flags": "--destination-application-security-groups [destination-application-security-groups]",
                      "required": 0,
                      "optional": -43,
                      "bool": true,
                      "long": "--destination-application-security-groups",
                      "description": "the application security group\n     specified as destination"
                    },
                    {
                      "flags": "--source-port-ranges [source-port-ranges]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "long": "--source-port-ranges",
                      "description": "the source port ranges"
                    },
                    {
                      "flags": "--destination-port-ranges [destination-port-ranges]",
                      "required": 0,
                      "optional": -27,
                      "bool": true,
                      "long": "--destination-port-ranges",
                      "description": "the destination port ranges"
                    },
                    {
                      "flags": "-c, --access [access]",
                      "required": 0,
                      "optional": -14,
                      "bool": true,
                      "short": "-c",
                      "long": "--access",
                      "description": "the network traffic is allowed or\n     denied. Possible values are: 'Allow' and 'Deny'"
                    },
                    {
                      "flags": "-y, --priority [priority]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-y",
                      "long": "--priority",
                      "description": "the priority of the rule. The value can\n     be between 100 and 4096. The priority number must be unique for each rule in\n     the collection. The lower the priority number, the higher the priority of the\n     rule"
                    },
                    {
                      "flags": "-r, --direction [direction]",
                      "required": 0,
                      "optional": -17,
                      "bool": true,
                      "short": "-r",
                      "long": "--direction",
                      "description": "the direction of the rule. The\n     direction specifies if rule will be evaluated on incoming or outcoming traffic.\n     Possible values are: 'Inbound' and 'Outbound'"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a security rule",
                  "fullName": "network nsg rule delete",
                  "usage": "[options] <resource-group> <nsg-name> <name>",
                  "filePath": "commands/arm/network.generated/NetworkSecurityGroups-securityRules.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-a, --nsg-name <nsg-name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--nsg-name",
                      "description": "the nsg name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the security rule"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a security rule",
                  "fullName": "network nsg rule show",
                  "usage": "[options] <resource-group> <nsg-name> <name>",
                  "filePath": "commands/arm/network.generated/NetworkSecurityGroups-securityRules.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-a, --nsg-name <nsg-name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--nsg-name",
                      "description": "the nsg name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the security rule"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List security rules",
                  "fullName": "network nsg rule list",
                  "usage": "[options] <resource-group> <nsg-name>",
                  "filePath": "commands/arm/network.generated/NetworkSecurityGroups-securityRules.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-a, --nsg-name <nsg-name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--nsg-name",
                      "description": "the nsg name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "watcher": {
          "name": "watcher",
          "description": "Commands to manage network watchers",
          "fullName": "network watcher",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a network watcher",
              "fullName": "network watcher create",
              "usage": "[options] <resource-group> <name> <location>",
              "filePath": "commands/arm/network.generated/networkWatchers.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the network watcher"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a network watcher",
              "fullName": "network watcher delete",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/networkWatchers.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the network watcher"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode, do not ask for delete confirmation"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show a network watcher",
              "fullName": "network watcher show",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/networkWatchers.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the network watcher"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list",
              "description": "List network watchers",
              "fullName": "network watcher list",
              "usage": "[options] <resource-group>",
              "filePath": "commands/arm/network.generated/networkWatchers.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group [resource-group]",
                  "required": 0,
                  "optional": -22,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "check-connectivity",
              "description": "Perform check connectivity operation on a network watcher",
              "fullName": "network watcher check-connectivity",
              "usage": "[options] <resource-group> <name> <source-id>",
              "filePath": "commands/arm/network.generated/networkWatchers.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the network watcher"
                },
                {
                  "flags": "-i, --source-id <source-id>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--source-id",
                  "description": "the ID of the resource from which a\n     connectivity check will be initiated"
                },
                {
                  "flags": "-p, --source-port [source-port]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-p",
                  "long": "--source-port",
                  "description": "sets source port"
                },
                {
                  "flags": "-d, --destination-id [destination-id]",
                  "required": 0,
                  "optional": -22,
                  "bool": true,
                  "short": "-d",
                  "long": "--destination-id",
                  "description": "the ID of the resource to which a\n     connection attempt will be made"
                },
                {
                  "flags": "-a, --destination-address [destination-address]",
                  "required": 0,
                  "optional": -27,
                  "bool": true,
                  "short": "-a",
                  "long": "--destination-address",
                  "description": "the IP address or URI the resource to\n     which a connection attempt will be made"
                },
                {
                  "flags": "-o, --destination-port [destination-port]",
                  "required": 0,
                  "optional": -24,
                  "bool": true,
                  "short": "-o",
                  "long": "--destination-port",
                  "description": "sets destination port"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "reachability-report",
              "description": "Perform get azure reachability report operation on a network watcher",
              "fullName": "network watcher reachability-report",
              "usage": "[options] <resource-group> <name> <start-time> <end-time>",
              "filePath": "commands/arm/network.generated/networkWatchers.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the network watcher"
                },
                {
                  "flags": "-c, --country [country]",
                  "required": 0,
                  "optional": -15,
                  "bool": true,
                  "short": "-c",
                  "long": "--country",
                  "description": "country option value"
                },
                {
                  "flags": "-a, --state [state]",
                  "required": 0,
                  "optional": -13,
                  "bool": true,
                  "short": "-a",
                  "long": "--state",
                  "description": "state option value"
                },
                {
                  "flags": "-i, --city [city]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-i",
                  "long": "--city",
                  "description": "city option value"
                },
                {
                  "flags": "-p, --providers [providers]",
                  "required": 0,
                  "optional": -17,
                  "bool": true,
                  "short": "-p",
                  "long": "--providers",
                  "description": "list of Internet service providers"
                },
                {
                  "flags": "-l, --azure-locations [azure-locations]",
                  "required": 0,
                  "optional": -23,
                  "bool": true,
                  "short": "-l",
                  "long": "--azure-locations",
                  "description": "optional Azure regions to scope the\n     query to"
                },
                {
                  "flags": "-t, --start-time <start-time>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--start-time",
                  "description": "the start time for the Azure\n     reachability report"
                },
                {
                  "flags": "-e, --end-time <end-time>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--end-time",
                  "description": "the end time for the Azure reachability\n     report"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "flow-log-status",
              "description": "Perform get flow log status operation on a network watcher",
              "fullName": "network watcher flow-log-status",
              "usage": "[options] <resource-group> <name> <target>",
              "filePath": "commands/arm/network.generated/networkWatchers.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the network watcher"
                },
                {
                  "flags": "-t, --target <target>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--target",
                  "description": "the target resource where getting the\n     flow logging status"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "next-hop",
              "description": "Perform get next hop operation on a network watcher",
              "fullName": "network watcher next-hop",
              "usage": "[options] <resource-group> <name> <target> <source-ip-address> <destination-ip-address>",
              "filePath": "commands/arm/network.generated/networkWatchers.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the network watcher"
                },
                {
                  "flags": "-t, --target <target>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--target",
                  "description": "the resource identifier of the target\n     resource against which the action is to be performed"
                },
                {
                  "flags": "-a, --source-ip-address <source-ip-address>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--source-ip-address",
                  "description": "the source IP address"
                },
                {
                  "flags": "-d, --destination-ip-address <destination-ip-address>",
                  "required": -30,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--destination-ip-address",
                  "description": "the destination IP address"
                },
                {
                  "flags": "-i, --nic-id [nic-id]",
                  "required": 0,
                  "optional": -14,
                  "bool": true,
                  "short": "-i",
                  "long": "--nic-id",
                  "description": "the NIC ID. (If VM has multiple NICs\n     and IP forwarding is enabled on any of the nics, then this parameter must be\n     specified. Otherwise optional)"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "topology",
              "description": "Perform get topology operation on a network watcher",
              "fullName": "network watcher topology",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/networkWatchers.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the network watcher"
                },
                {
                  "flags": "-r, --topology-resource-group [topology-resource-group]",
                  "required": 0,
                  "optional": -31,
                  "bool": true,
                  "short": "-r",
                  "long": "--topology-resource-group",
                  "description": "the name of the target resource group\n     to perform topology on"
                },
                {
                  "flags": "-e, --target-vnet-id [target-vnet-id]",
                  "required": 0,
                  "optional": -22,
                  "bool": true,
                  "short": "-e",
                  "long": "--target-vnet-id",
                  "description": "sets target virtual network."
                },
                {
                  "flags": "-u, --target-subnet-id [target-subnet-id]",
                  "required": 0,
                  "optional": -24,
                  "bool": true,
                  "short": "-u",
                  "long": "--target-subnet-id",
                  "description": "sets target subnet."
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "troubleshoot",
              "description": "Perform get troubleshooting operation on a network watcher",
              "fullName": "network watcher troubleshoot",
              "usage": "[options] <resource-group> <name> <target> <storage-id> <storage-path>",
              "filePath": "commands/arm/network.generated/networkWatchers.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the network watcher"
                },
                {
                  "flags": "-t, --target <target>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--target",
                  "description": "the target resource to troubleshoot"
                },
                {
                  "flags": "-i, --storage-id <storage-id>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--storage-id",
                  "description": "the ID for the storage account to save\n     the troubleshoot result"
                },
                {
                  "flags": "-p, --storage-path <storage-path>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--storage-path",
                  "description": "the path to the blob to save the\n     troubleshoot result in"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "troubleshoot-result",
              "description": "Perform get troubleshooting result operation on a network watcher",
              "fullName": "network watcher troubleshoot-result",
              "usage": "[options] <resource-group> <name> <target>",
              "filePath": "commands/arm/network.generated/networkWatchers.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the network watcher"
                },
                {
                  "flags": "-t, --target <target>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--target",
                  "description": "the target resource ID to query the\n     troubleshooting result"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "security-group-view",
              "description": "Perform get vm security rules operation on a network watcher",
              "fullName": "network watcher security-group-view",
              "usage": "[options] <resource-group> <name> <target>",
              "filePath": "commands/arm/network.generated/networkWatchers.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the network watcher"
                },
                {
                  "flags": "-t, --target <target>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--target",
                  "description": "id of the target VM"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "reachability-report-provider-list",
              "description": "Perform list available providers operation on a network watcher",
              "fullName": "network watcher reachability-report-provider-list",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/networkWatchers.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the network watcher"
                },
                {
                  "flags": "-l, --azure-locations [azure-locations]",
                  "required": 0,
                  "optional": -23,
                  "bool": true,
                  "short": "-l",
                  "long": "--azure-locations",
                  "description": "azure locations option value"
                },
                {
                  "flags": "-c, --country [country]",
                  "required": 0,
                  "optional": -15,
                  "bool": true,
                  "short": "-c",
                  "long": "--country",
                  "description": "country option value"
                },
                {
                  "flags": "-a, --state [state]",
                  "required": 0,
                  "optional": -13,
                  "bool": true,
                  "short": "-a",
                  "long": "--state",
                  "description": "state option value"
                },
                {
                  "flags": "-i, --city [city]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-i",
                  "long": "--city",
                  "description": "city option value"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "configure-flow-log",
              "description": "Perform set flow log configuration operation on a network watcher",
              "fullName": "network watcher configure-flow-log",
              "usage": "[options] <resource-group> <name> <target> <storage-id> <enable>",
              "filePath": "commands/arm/network.generated/networkWatchers.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the network watcher"
                },
                {
                  "flags": "-t, --target <target>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--target",
                  "description": "the target resource where getting the\n     flow logging status"
                },
                {
                  "flags": "-i, --storage-id <storage-id>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--storage-id",
                  "description": "id of the storage account which is used\n     to store the flow log"
                },
                {
                  "flags": "-e, --enable <enable>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--enable",
                  "description": "flag to enable/disable flow logging"
                },
                {
                  "flags": "-d, --retention-days [retention-days]",
                  "required": 0,
                  "optional": -22,
                  "bool": true,
                  "short": "-d",
                  "long": "--retention-days",
                  "description": "number of days to retain flow log\n     records"
                },
                {
                  "flags": "-r, --retention-enable [retention-enable]",
                  "required": 0,
                  "optional": -24,
                  "bool": true,
                  "short": "-r",
                  "long": "--retention-enable",
                  "description": "flag to enable/disable retention"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "ip-flow-verify",
              "description": "Perform verify ip flow operation on a network watcher",
              "fullName": "network watcher ip-flow-verify",
              "usage": "[options] <resource-group> <name> <target> <direction> <protocol> <local-port> <remote-port> <local-ip-address> <remote-ip-address>",
              "filePath": "commands/arm/network.generated/networkWatchers.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the network watcher"
                },
                {
                  "flags": "-t, --target <target>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--target",
                  "description": "the ID of the target resource to\n     perform next-hop on"
                },
                {
                  "flags": "-d, --direction <direction>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--direction",
                  "description": "the direction of the packet represented\n     as a 5-tuple"
                },
                {
                  "flags": "-p, --protocol <protocol>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--protocol",
                  "description": "protocol to be verified on"
                },
                {
                  "flags": "-o, --local-port <local-port>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--local-port",
                  "description": "the local port. Acceptable values are a\n     single integer in the range (0-65535). Support for * for the source port, which\n     depends on the direction"
                },
                {
                  "flags": "-m, --remote-port <remote-port>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--remote-port",
                  "description": "the remote port. Acceptable values are\n     a single integer in the range (0-65535). Support for * for the source port,\n     which depends on the direction"
                },
                {
                  "flags": "-l, --local-ip-address <local-ip-address>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--local-ip-address",
                  "description": "the local IP address. Acceptable values\n     are valid IPv4 addresses"
                },
                {
                  "flags": "-r, --remote-ip-address <remote-ip-address>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--remote-ip-address",
                  "description": "the remote IP address. Acceptable\n     values are valid IPv4 addresses"
                },
                {
                  "flags": "-i, --nic-id [nic-id]",
                  "required": 0,
                  "optional": -14,
                  "bool": true,
                  "short": "-i",
                  "long": "--nic-id",
                  "description": "the NIC ID. (If VM has multiple NICs\n     and IP forwarding is enabled on any of them, then this parameter must be\n     specified. Otherwise optional)"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {
            "packet-capture": {
              "name": "packet-capture",
              "description": "Commands to manage packet captures",
              "fullName": "network watcher packet-capture",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a packet capture",
                  "fullName": "network watcher packet-capture create",
                  "usage": "[options] <resource-group> <watcher-name> <name> <target>",
                  "filePath": "commands/arm/network.generated/NetworkWatchers-packetCaptures.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --watcher-name <watcher-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--watcher-name",
                      "description": "the watcher name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the packet capture"
                    },
                    {
                      "flags": "-t, --target <target>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--target",
                      "description": "the ID of the targeted resource, only\n     VM is currently supported"
                    },
                    {
                      "flags": "-b, --bytes-per-packet [bytes-per-packet]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-b",
                      "long": "--bytes-per-packet",
                      "description": "number of bytes captured per packet,\n     the remaining bytes are truncated"
                    },
                    {
                      "flags": "-y, --bytes-per-session [bytes-per-session]",
                      "required": 0,
                      "optional": -25,
                      "bool": true,
                      "short": "-y",
                      "long": "--bytes-per-session",
                      "description": "maximum size of the capture output"
                    },
                    {
                      "flags": "-l, --time-limit [time-limit]",
                      "required": 0,
                      "optional": -18,
                      "bool": true,
                      "short": "-l",
                      "long": "--time-limit",
                      "description": "maximum duration of the capture session\n     in seconds"
                    },
                    {
                      "flags": "-o, --storage-id [storage-id]",
                      "required": 0,
                      "optional": -18,
                      "bool": true,
                      "short": "-o",
                      "long": "--storage-id",
                      "description": "the ID of the storage account to save\n     the packet capture session. Required if no local file path is provided"
                    },
                    {
                      "flags": "-p, --storage-path [storage-path]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-p",
                      "long": "--storage-path",
                      "description": "the URI of the storage path to save the\n     packet capture. Must be a well-formed URI describing the location to save the\n     packet capture"
                    },
                    {
                      "flags": "-e, --local-file-path [local-file-path]",
                      "required": 0,
                      "optional": -23,
                      "bool": true,
                      "short": "-e",
                      "long": "--local-file-path",
                      "description": "a valid local path on the targeting VM.\n     Must include the name of the capture file (*.cap). For linux virtual machine it\n     must start with /var/captures. Required if no storage ID is provided, otherwise\n     optional"
                    },
                    {
                      "flags": "-r, --filters-file [filters-file]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-r",
                      "long": "--filters-file",
                      "description": "file cointaining JSON formatted Filters"
                    },
                    {
                      "flags": "-f, --filters [filters]",
                      "required": 0,
                      "optional": -15,
                      "bool": true,
                      "short": "-f",
                      "long": "--filters",
                      "description": "filter that is applied to packet\n     capture request. Multiple filters can be applied. Should be in JSON format.\n     Supported properties: protocol, localIPAddress, remoteIPAddress localPort\n     remotePort. Argument format:\"[{\\\"protocol\\\":\\\"TCP\\\"},\n     {\\\"protocol\\\":\\\"UDP\\\"}]\""
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a packet capture",
                  "fullName": "network watcher packet-capture delete",
                  "usage": "[options] <resource-group> <watcher-name> <name>",
                  "filePath": "commands/arm/network.generated/NetworkWatchers-packetCaptures.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --watcher-name <watcher-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--watcher-name",
                      "description": "the watcher name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the packet capture"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a packet capture",
                  "fullName": "network watcher packet-capture show",
                  "usage": "[options] <resource-group> <watcher-name> <name>",
                  "filePath": "commands/arm/network.generated/NetworkWatchers-packetCaptures.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --watcher-name <watcher-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--watcher-name",
                      "description": "the watcher name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the packet capture"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List packet captures",
                  "fullName": "network watcher packet-capture list",
                  "usage": "[options] <resource-group> <watcher-name>",
                  "filePath": "commands/arm/network.generated/NetworkWatchers-packetCaptures.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --watcher-name <watcher-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--watcher-name",
                      "description": "the watcher name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "status",
                  "description": "Perform get status operation on a packet capture",
                  "fullName": "network watcher packet-capture status",
                  "usage": "[options] <resource-group> <watcher-name> <name>",
                  "filePath": "commands/arm/network.generated/NetworkWatchers-packetCaptures.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --watcher-name <watcher-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--watcher-name",
                      "description": "the watcher name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the packet capture"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "stop",
                  "description": "Perform stop operation on a packet capture",
                  "fullName": "network watcher packet-capture stop",
                  "usage": "[options] <resource-group> <watcher-name> <name>",
                  "filePath": "commands/arm/network.generated/NetworkWatchers-packetCaptures.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-w, --watcher-name <watcher-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--watcher-name",
                      "description": "the watcher name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the packet capture"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "route-table": {
          "name": "route-table",
          "description": "Commands to manage route tables",
          "fullName": "network route-table",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a route table",
              "fullName": "network route-table create",
              "usage": "[options] <resource-group> <name> <location>",
              "filePath": "commands/arm/network.generated/routeTables.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the route table"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "set",
              "description": "Update a route table",
              "fullName": "network route-table set",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/routeTables.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the route table"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a route table",
              "fullName": "network route-table delete",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/routeTables.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the route table"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode, do not ask for delete confirmation"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show a route table",
              "fullName": "network route-table show",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/routeTables.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the route table"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list",
              "description": "List route tables",
              "fullName": "network route-table list",
              "usage": "[options] <resource-group>",
              "filePath": "commands/arm/network.generated/routeTables.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group [resource-group]",
                  "required": 0,
                  "optional": -22,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {
            "route": {
              "name": "route",
              "description": "Commands to manage routes",
              "fullName": "network route-table route",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a route",
                  "fullName": "network route-table route create",
                  "usage": "[options] <resource-group> <route-table-name> <name> <address-prefix> <next-hop-type>",
                  "filePath": "commands/arm/network.generated/RouteTables-routes.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-r, --route-table-name <route-table-name>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--route-table-name",
                      "description": "the route table name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the route"
                    },
                    {
                      "flags": "-a, --address-prefix <address-prefix>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--address-prefix",
                      "description": "the destination CIDR to which the route\n     applies"
                    },
                    {
                      "flags": "-p, --next-hop-ip-address [next-hop-ip-address]",
                      "required": 0,
                      "optional": -27,
                      "bool": true,
                      "short": "-p",
                      "long": "--next-hop-ip-address",
                      "description": "the IP address packets should be\n     forwarded to. Next hop values are only allowed in routes where the next hop\n     type is VirtualAppliance"
                    },
                    {
                      "flags": "-y, --next-hop-type <next-hop-type>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-y",
                      "long": "--next-hop-type",
                      "description": "the type of Azure hop the packet should\n     be sent to. Possible values are: 'VirtualNetworkGateway', 'VnetLocal',\n     'Internet', 'VirtualAppliance', and 'None'"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update a route",
                  "fullName": "network route-table route set",
                  "usage": "[options] <resource-group> <route-table-name> <name>",
                  "filePath": "commands/arm/network.generated/RouteTables-routes.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-r, --route-table-name <route-table-name>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--route-table-name",
                      "description": "the route table name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the route"
                    },
                    {
                      "flags": "-a, --address-prefix [address-prefix]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-a",
                      "long": "--address-prefix",
                      "description": "the destination CIDR to which the route\n     applies"
                    },
                    {
                      "flags": "-p, --next-hop-ip-address [next-hop-ip-address]",
                      "required": 0,
                      "optional": -27,
                      "bool": true,
                      "short": "-p",
                      "long": "--next-hop-ip-address",
                      "description": "the IP address packets should be\n     forwarded to. Next hop values are only allowed in routes where the next hop\n     type is VirtualAppliance"
                    },
                    {
                      "flags": "-y, --next-hop-type [next-hop-type]",
                      "required": 0,
                      "optional": -21,
                      "bool": true,
                      "short": "-y",
                      "long": "--next-hop-type",
                      "description": "the type of Azure hop the packet should\n     be sent to. Possible values are: 'VirtualNetworkGateway', 'VnetLocal',\n     'Internet', 'VirtualAppliance', and 'None'"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a route",
                  "fullName": "network route-table route delete",
                  "usage": "[options] <resource-group> <route-table-name> <name>",
                  "filePath": "commands/arm/network.generated/RouteTables-routes.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-r, --route-table-name <route-table-name>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--route-table-name",
                      "description": "the route table name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the route"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a route",
                  "fullName": "network route-table route show",
                  "usage": "[options] <resource-group> <route-table-name> <name>",
                  "filePath": "commands/arm/network.generated/RouteTables-routes.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-r, --route-table-name <route-table-name>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--route-table-name",
                      "description": "the route table name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the route"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List routes",
                  "fullName": "network route-table route list",
                  "usage": "[options] <resource-group> <route-table-name>",
                  "filePath": "commands/arm/network.generated/RouteTables-routes.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-r, --route-table-name <route-table-name>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--route-table-name",
                      "description": "the route table name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "traffic-manager": {
          "name": "traffic-manager",
          "description": "Commands to manage Traffic Manager",
          "fullName": "network traffic-manager",
          "usage": "[options]",
          "options": [],
          "commands": [],
          "categories": {
            "endpoint": {
              "name": "endpoint",
              "description": "Commands to manage endpoints",
              "fullName": "network traffic-manager endpoint",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create an endpoint",
                  "fullName": "network traffic-manager endpoint create",
                  "usage": "[options] <resource-group> <profile-name> <type> <name>",
                  "filePath": "commands/arm/network.generated/TrafficManagers-endpoints.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-f, --profile-name <profile-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--profile-name",
                      "description": "the profile name"
                    },
                    {
                      "flags": "-y, --type <type>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-y",
                      "long": "--type",
                      "description": "the type"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the endpoint"
                    },
                    {
                      "flags": "-i, --target-resource-id [target-resource-id]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-i",
                      "long": "--target-resource-id",
                      "description": "the Azure Resource URI of the of the\n     endpoint. Not applicable to endpoints of type 'ExternalEndpoints'"
                    },
                    {
                      "flags": "-t, --target [target]",
                      "required": 0,
                      "optional": -14,
                      "bool": true,
                      "short": "-t",
                      "long": "--target",
                      "description": "the fully-qualified DNS name of the\n     endpoint. Traffic Manager returns this value in DNS responses to direct traffic\n     to this endpoint"
                    },
                    {
                      "flags": "-u, --status [status]",
                      "required": 0,
                      "optional": -14,
                      "bool": true,
                      "short": "-u",
                      "long": "--status",
                      "description": "the status of the endpoint. If the\n     endpoint is Enabled, it is probed for endpoint health and is included in the\n     traffic routing method"
                    },
                    {
                      "flags": "-w, --weight [weight]",
                      "required": 0,
                      "optional": -14,
                      "bool": true,
                      "short": "-w",
                      "long": "--weight",
                      "description": "the weight of this endpoint when using\n     the 'Weighted' traffic routing method. Possible values are from 1 to 1000"
                    },
                    {
                      "flags": "-p, --priority [priority]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-p",
                      "long": "--priority",
                      "description": "the priority of this endpoint when\n     using the 'Priority' traffic routing method. Possible values are from 1 to\n     1000, lower values represent higher priority. This is an optional parameter.\n     If specified, it must be specified on all endpoints, and no two endpoints can\n     share the same priority value"
                    },
                    {
                      "flags": "-l, --location [location]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-l",
                      "long": "--location",
                      "description": "specifies the location of the external\n     or nested endpoints when using the 'Performance' traffic routing method"
                    },
                    {
                      "flags": "-c, --min-child-endpoints [min-child-endpoints]",
                      "required": 0,
                      "optional": -27,
                      "bool": true,
                      "short": "-c",
                      "long": "--min-child-endpoints",
                      "description": "the minimum number of endpoints that\n     must be available in the child profile in order for the parent profile to be\n     considered available. Only applicable to endpoint of type 'NestedEndpoints'"
                    },
                    {
                      "flags": "-m, --geo-mapping [geo-mapping]",
                      "required": 0,
                      "optional": -19,
                      "bool": true,
                      "short": "-m",
                      "long": "--geo-mapping",
                      "description": "the list of countries/regions mapped to\n     this endpoint when using the 'Geographic' traffic routing method. Please\n     consult Traffic Manager Geographic documentation for a full list of accepted\n     values"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update an endpoint",
                  "fullName": "network traffic-manager endpoint set",
                  "usage": "[options] <resource-group> <profile-name> <type> <name>",
                  "filePath": "commands/arm/network.generated/TrafficManagers-endpoints.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-f, --profile-name <profile-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--profile-name",
                      "description": "the profile name"
                    },
                    {
                      "flags": "-y, --type <type>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-y",
                      "long": "--type",
                      "description": "the type"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the endpoint"
                    },
                    {
                      "flags": "-i, --target-resource-id [target-resource-id]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-i",
                      "long": "--target-resource-id",
                      "description": "the Azure Resource URI of the of the\n     endpoint. Not applicable to endpoints of type 'ExternalEndpoints'"
                    },
                    {
                      "flags": "-t, --target [target]",
                      "required": 0,
                      "optional": -14,
                      "bool": true,
                      "short": "-t",
                      "long": "--target",
                      "description": "the fully-qualified DNS name of the\n     endpoint. Traffic Manager returns this value in DNS responses to direct traffic\n     to this endpoint"
                    },
                    {
                      "flags": "-u, --status [status]",
                      "required": 0,
                      "optional": -14,
                      "bool": true,
                      "short": "-u",
                      "long": "--status",
                      "description": "the status of the endpoint. If the\n     endpoint is Enabled, it is probed for endpoint health and is included in the\n     traffic routing method"
                    },
                    {
                      "flags": "-w, --weight [weight]",
                      "required": 0,
                      "optional": -14,
                      "bool": true,
                      "short": "-w",
                      "long": "--weight",
                      "description": "the weight of this endpoint when using\n     the 'Weighted' traffic routing method. Possible values are from 1 to 1000"
                    },
                    {
                      "flags": "-p, --priority [priority]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-p",
                      "long": "--priority",
                      "description": "the priority of this endpoint when\n     using the 'Priority' traffic routing method. Possible values are from 1 to\n     1000, lower values represent higher priority. This is an optional parameter.\n     If specified, it must be specified on all endpoints, and no two endpoints can\n     share the same priority value"
                    },
                    {
                      "flags": "-l, --location [location]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-l",
                      "long": "--location",
                      "description": "specifies the location of the external\n     or nested endpoints when using the 'Performance' traffic routing method"
                    },
                    {
                      "flags": "-c, --min-child-endpoints [min-child-endpoints]",
                      "required": 0,
                      "optional": -27,
                      "bool": true,
                      "short": "-c",
                      "long": "--min-child-endpoints",
                      "description": "the minimum number of endpoints that\n     must be available in the child profile in order for the parent profile to be\n     considered available. Only applicable to endpoint of type 'NestedEndpoints'"
                    },
                    {
                      "flags": "-m, --geo-mapping [geo-mapping]",
                      "required": 0,
                      "optional": -19,
                      "bool": true,
                      "short": "-m",
                      "long": "--geo-mapping",
                      "description": "the list of countries/regions mapped to\n     this endpoint when using the 'Geographic' traffic routing method. Please\n     consult Traffic Manager Geographic documentation for a full list of accepted\n     values"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete an endpoint",
                  "fullName": "network traffic-manager endpoint delete",
                  "usage": "[options] <resource-group> <profile-name> <type> <name>",
                  "filePath": "commands/arm/network.generated/TrafficManagers-endpoints.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-f, --profile-name <profile-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--profile-name",
                      "description": "the profile name"
                    },
                    {
                      "flags": "-y, --type <type>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-y",
                      "long": "--type",
                      "description": "the type"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the endpoint"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show an endpoint",
                  "fullName": "network traffic-manager endpoint show",
                  "usage": "[options] <resource-group> <profile-name> <type> <name>",
                  "filePath": "commands/arm/network.generated/TrafficManagers-endpoints.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-f, --profile-name <profile-name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--profile-name",
                      "description": "the profile name"
                    },
                    {
                      "flags": "-y, --type <type>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-y",
                      "long": "--type",
                      "description": "the type"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the endpoint"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "profile": {
              "name": "profile",
              "description": "Commands to manage profiles",
              "fullName": "network traffic-manager profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a profile",
                  "fullName": "network traffic-manager profile create",
                  "usage": "[options] <resource-group> <name> <relative-dns-name>",
                  "filePath": "commands/arm/network.generated/TrafficManagers-profiles.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the profile"
                    },
                    {
                      "flags": "-u, --profile-status [profile-status]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-u",
                      "long": "--profile-status",
                      "description": "the status of the Traffic Manager\n     profile"
                    },
                    {
                      "flags": "-m, --traffic-routing-method [traffic-routing-method]",
                      "required": 0,
                      "optional": -30,
                      "bool": true,
                      "short": "-m",
                      "long": "--traffic-routing-method",
                      "description": "the traffic routing method of the\n     Traffic Manager profile"
                    },
                    {
                      "flags": "-r, --relative-dns-name <relative-dns-name>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--relative-dns-name",
                      "description": "the relative DNS name provided by this\n     Traffic Manager profile. This value is combined with the DNS domain name used\n     by Azure Traffic Manager to form the fully-qualified domain name (FQDN) of the\n     profile"
                    },
                    {
                      "flags": "-l, --ttl [ttl]",
                      "required": 0,
                      "optional": -11,
                      "bool": true,
                      "short": "-l",
                      "long": "--ttl",
                      "description": "the DNS Time-To-Live (TTL), in seconds.\n     This informs the local DNS resolvers and DNS clients how long to cache DNS\n     responses provided by this Traffic Manager profile"
                    },
                    {
                      "flags": "-p, --monitor-protocol [monitor-protocol]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-p",
                      "long": "--monitor-protocol",
                      "description": "the protocol (HTTP, HTTPS or TCP) used\n     to probe for endpoint health"
                    },
                    {
                      "flags": "-o, --monitor-port [monitor-port]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-o",
                      "long": "--monitor-port",
                      "description": "the TCP port used to probe for endpoint\n     health"
                    },
                    {
                      "flags": "-a, --monitor-path [monitor-path]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-a",
                      "long": "--monitor-path",
                      "description": "the path relative to the endpoint\n     domain name used to probe for endpoint health"
                    },
                    {
                      "flags": "-e, --interval-in-seconds [interval-in-seconds]",
                      "required": 0,
                      "optional": -27,
                      "bool": true,
                      "short": "-e",
                      "long": "--interval-in-seconds",
                      "description": "the monitor interval for endpoints in\n     this profile. This is the interval at which Traffic Manager will check the\n     health of each endpoint in this profile"
                    },
                    {
                      "flags": "-i, --timeout-in-seconds [timeout-in-seconds]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-i",
                      "long": "--timeout-in-seconds",
                      "description": "the monitor timeout for endpoints in\n     this profile. This is the time that Traffic Manager allows endpoints in this\n     profile to response to the health check"
                    },
                    {
                      "flags": "-f, --tolerated-number-of-failures [tolerated-number-of-failures]",
                      "required": 0,
                      "optional": -36,
                      "bool": true,
                      "short": "-f",
                      "long": "--tolerated-number-of-failures",
                      "description": "the number of consecutive failed health\n     check that Traffic Manager tolerates before declaring an endpoint in this\n     profile Degraded after the next failed health check"
                    },
                    {
                      "flags": "-t, --tags [tags]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-t",
                      "long": "--tags",
                      "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update a profile",
                  "fullName": "network traffic-manager profile set",
                  "usage": "[options] <resource-group> <name>",
                  "filePath": "commands/arm/network.generated/TrafficManagers-profiles.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the profile"
                    },
                    {
                      "flags": "-u, --profile-status [profile-status]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-u",
                      "long": "--profile-status",
                      "description": "the status of the Traffic Manager\n     profile"
                    },
                    {
                      "flags": "-m, --traffic-routing-method [traffic-routing-method]",
                      "required": 0,
                      "optional": -30,
                      "bool": true,
                      "short": "-m",
                      "long": "--traffic-routing-method",
                      "description": "the traffic routing method of the\n     Traffic Manager profile"
                    },
                    {
                      "flags": "-r, --relative-dns-name [relative-dns-name]",
                      "required": 0,
                      "optional": -25,
                      "bool": true,
                      "short": "-r",
                      "long": "--relative-dns-name",
                      "description": "the relative DNS name provided by this\n     Traffic Manager profile. This value is combined with the DNS domain name used\n     by Azure Traffic Manager to form the fully-qualified domain name (FQDN) of the\n     profile"
                    },
                    {
                      "flags": "-l, --ttl [ttl]",
                      "required": 0,
                      "optional": -11,
                      "bool": true,
                      "short": "-l",
                      "long": "--ttl",
                      "description": "the DNS Time-To-Live (TTL), in seconds.\n     This informs the local DNS resolvers and DNS clients how long to cache DNS\n     responses provided by this Traffic Manager profile"
                    },
                    {
                      "flags": "-p, --monitor-protocol [monitor-protocol]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-p",
                      "long": "--monitor-protocol",
                      "description": "the protocol (HTTP, HTTPS or TCP) used\n     to probe for endpoint health"
                    },
                    {
                      "flags": "-o, --monitor-port [monitor-port]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-o",
                      "long": "--monitor-port",
                      "description": "the TCP port used to probe for endpoint\n     health"
                    },
                    {
                      "flags": "-a, --monitor-path [monitor-path]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-a",
                      "long": "--monitor-path",
                      "description": "the path relative to the endpoint\n     domain name used to probe for endpoint health"
                    },
                    {
                      "flags": "-e, --interval-in-seconds [interval-in-seconds]",
                      "required": 0,
                      "optional": -27,
                      "bool": true,
                      "short": "-e",
                      "long": "--interval-in-seconds",
                      "description": "the monitor interval for endpoints in\n     this profile. This is the interval at which Traffic Manager will check the\n     health of each endpoint in this profile"
                    },
                    {
                      "flags": "-i, --timeout-in-seconds [timeout-in-seconds]",
                      "required": 0,
                      "optional": -26,
                      "bool": true,
                      "short": "-i",
                      "long": "--timeout-in-seconds",
                      "description": "the monitor timeout for endpoints in\n     this profile. This is the time that Traffic Manager allows endpoints in this\n     profile to response to the health check"
                    },
                    {
                      "flags": "-f, --tolerated-number-of-failures [tolerated-number-of-failures]",
                      "required": 0,
                      "optional": -36,
                      "bool": true,
                      "short": "-f",
                      "long": "--tolerated-number-of-failures",
                      "description": "the number of consecutive failed health\n     check that Traffic Manager tolerates before declaring an endpoint in this\n     profile Degraded after the next failed health check"
                    },
                    {
                      "flags": "-t, --tags [tags]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-t",
                      "long": "--tags",
                      "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a profile",
                  "fullName": "network traffic-manager profile delete",
                  "usage": "[options] <resource-group> <name>",
                  "filePath": "commands/arm/network.generated/TrafficManagers-profiles.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the profile"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a profile",
                  "fullName": "network traffic-manager profile show",
                  "usage": "[options] <resource-group> <name>",
                  "filePath": "commands/arm/network.generated/TrafficManagers-profiles.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the profile"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List profile",
                  "fullName": "network traffic-manager profile list",
                  "usage": "[options] <resource-group>",
                  "filePath": "commands/arm/network.generated/TrafficManagers-profiles.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group [resource-group]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "is-dns-available",
                  "description": "Perform check traffic manager relative dns name availability operation on a profile",
                  "fullName": "network traffic-manager profile is-dns-available",
                  "usage": "[options] <relative-dns-name>",
                  "filePath": "commands/arm/network.generated/TrafficManagers-profiles.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-r, --relative-dns-name <relative-dns-name>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--relative-dns-name",
                      "description": "The name of profile."
                    },
                    {
                      "flags": "-y, --type [type]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-y",
                      "long": "--type",
                      "description": "the type of the resource"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "vnet": {
          "name": "vnet",
          "description": "Commands to manage virtual networks",
          "fullName": "network vnet",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a virtual network",
              "fullName": "network vnet create",
              "usage": "[options] <resource-group> <name> <location>",
              "filePath": "commands/arm/network.generated/virtualNetworks.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the virtual network"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-a, --address-prefixes [address-prefixes]",
                  "required": 0,
                  "optional": -24,
                  "bool": true,
                  "short": "-a",
                  "long": "--address-prefixes",
                  "description": "a list of address blocks reserved for\n     this virtual network in CIDR notation"
                },
                {
                  "flags": "-d, --dns-servers [dns-servers]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-servers",
                  "description": "the list of DNS servers IP addresses"
                },
                {
                  "flags": "--enable-ddos-protection [enable-ddos-protection]",
                  "required": 0,
                  "optional": -26,
                  "bool": true,
                  "long": "--enable-ddos-protection",
                  "description": "indicates if DDoS protection is enabled\n     for all the protected resources in a Virtual Network"
                },
                {
                  "flags": "--enable-vm-protection [enable-vm-protection]",
                  "required": 0,
                  "optional": -24,
                  "bool": true,
                  "long": "--enable-vm-protection",
                  "description": "indicates if Vm protection is enabled\n     for all the subnets in a Virtual Network"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "set",
              "description": "Update a virtual network",
              "fullName": "network vnet set",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/virtualNetworks.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the virtual network"
                },
                {
                  "flags": "-a, --address-prefixes [address-prefixes]",
                  "required": 0,
                  "optional": -24,
                  "bool": true,
                  "short": "-a",
                  "long": "--address-prefixes",
                  "description": "a list of address blocks reserved for\n     this virtual network in CIDR notation"
                },
                {
                  "flags": "-d, --dns-servers [dns-servers]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-servers",
                  "description": "the list of DNS servers IP addresses"
                },
                {
                  "flags": "--enable-ddos-protection [enable-ddos-protection]",
                  "required": 0,
                  "optional": -26,
                  "bool": true,
                  "long": "--enable-ddos-protection",
                  "description": "indicates if DDoS protection is enabled\n     for all the protected resources in a Virtual Network"
                },
                {
                  "flags": "--enable-vm-protection [enable-vm-protection]",
                  "required": 0,
                  "optional": -24,
                  "bool": true,
                  "long": "--enable-vm-protection",
                  "description": "indicates if Vm protection is enabled\n     for all the subnets in a Virtual Network"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a virtual network",
              "fullName": "network vnet delete",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/virtualNetworks.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the virtual network"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode, do not ask for delete confirmation"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show a virtual network",
              "fullName": "network vnet show",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/virtualNetworks.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the virtual network"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list",
              "description": "List virtual networks",
              "fullName": "network vnet list",
              "usage": "[options] <resource-group>",
              "filePath": "commands/arm/network.generated/virtualNetworks.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group [resource-group]",
                  "required": 0,
                  "optional": -22,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "usage",
              "description": "Perform list usage operation on a virtual network",
              "fullName": "network vnet usage",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/virtualNetworks.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the virtual network"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {
            "subnet": {
              "name": "subnet",
              "description": "Commands to manage subnet",
              "fullName": "network vnet subnet",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a subnet",
                  "fullName": "network vnet subnet create",
                  "usage": "[options] <resource-group> <vnet-name> <name> <address-prefix>",
                  "filePath": "commands/arm/network.generated/VirtualNetworks-subnets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-e, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--vnet-name",
                      "description": "the vnet name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the subnet"
                    },
                    {
                      "flags": "-a, --address-prefix <address-prefix>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--address-prefix",
                      "description": "the address prefix for the subnet"
                    },
                    {
                      "flags": "-w, --network-security-group-id [network-security-group-id]",
                      "required": 0,
                      "optional": -33,
                      "bool": true,
                      "short": "-w",
                      "long": "--network-security-group-id",
                      "description": "sets network security group id. This\n     option is mutually exclusive with --network-security-group-name"
                    },
                    {
                      "flags": "-o, --network-security-group-name [network-security-group-name]",
                      "required": 0,
                      "optional": -35,
                      "bool": true,
                      "short": "-o",
                      "long": "--network-security-group-name",
                      "description": "sets network security group name. This\n     option is mutually exclusive with --network-security-group-id"
                    },
                    {
                      "flags": "-i, --route-table-id [route-table-id]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-i",
                      "long": "--route-table-id",
                      "description": "sets route table id. This option is\n     mutually exclusive with --route-table-name"
                    },
                    {
                      "flags": "-r, --route-table-name [route-table-name]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-r",
                      "long": "--route-table-name",
                      "description": "sets route table name. This option is\n     mutually exclusive with --route-table-id"
                    },
                    {
                      "flags": "-p, --service-endpoints [service-endpoints]",
                      "required": 0,
                      "optional": -25,
                      "bool": true,
                      "short": "-p",
                      "long": "--service-endpoints",
                      "description": "an array of service endpoints"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update a subnet",
                  "fullName": "network vnet subnet set",
                  "usage": "[options] <resource-group> <vnet-name> <name>",
                  "filePath": "commands/arm/network.generated/VirtualNetworks-subnets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-e, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--vnet-name",
                      "description": "the vnet name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the subnet"
                    },
                    {
                      "flags": "-a, --address-prefix [address-prefix]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-a",
                      "long": "--address-prefix",
                      "description": "the address prefix for the subnet"
                    },
                    {
                      "flags": "-w, --network-security-group-id [network-security-group-id]",
                      "required": 0,
                      "optional": -33,
                      "bool": true,
                      "short": "-w",
                      "long": "--network-security-group-id",
                      "description": "sets network security group id. This\n     option is mutually exclusive with --network-security-group-name"
                    },
                    {
                      "flags": "-o, --network-security-group-name [network-security-group-name]",
                      "required": 0,
                      "optional": -35,
                      "bool": true,
                      "short": "-o",
                      "long": "--network-security-group-name",
                      "description": "sets network security group name. This\n     option is mutually exclusive with --network-security-group-id"
                    },
                    {
                      "flags": "-i, --route-table-id [route-table-id]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-i",
                      "long": "--route-table-id",
                      "description": "sets route table id. This option is\n     mutually exclusive with --route-table-name"
                    },
                    {
                      "flags": "-r, --route-table-name [route-table-name]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-r",
                      "long": "--route-table-name",
                      "description": "sets route table name. This option is\n     mutually exclusive with --route-table-id"
                    },
                    {
                      "flags": "-p, --service-endpoints [service-endpoints]",
                      "required": 0,
                      "optional": -25,
                      "bool": true,
                      "short": "-p",
                      "long": "--service-endpoints",
                      "description": "an array of service endpoints"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a subnet",
                  "fullName": "network vnet subnet delete",
                  "usage": "[options] <resource-group> <vnet-name> <name>",
                  "filePath": "commands/arm/network.generated/VirtualNetworks-subnets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-e, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--vnet-name",
                      "description": "the vnet name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the subnet"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a subnet",
                  "fullName": "network vnet subnet show",
                  "usage": "[options] <resource-group> <vnet-name> <name>",
                  "filePath": "commands/arm/network.generated/VirtualNetworks-subnets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-e, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--vnet-name",
                      "description": "the vnet name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the subnet"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List subnet",
                  "fullName": "network vnet subnet list",
                  "usage": "[options] <resource-group> <vnet-name>",
                  "filePath": "commands/arm/network.generated/VirtualNetworks-subnets.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-e, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--vnet-name",
                      "description": "the vnet name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "peering": {
              "name": "peering",
              "description": "Commands to manage virtual network peerings",
              "fullName": "network vnet peering",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a virtual network peering",
                  "fullName": "network vnet peering create",
                  "usage": "[options] <resource-group> <vnet-name> <name>",
                  "filePath": "commands/arm/network.generated/VirtualNetworks-virtualNetworkPeerings.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-e, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--vnet-name",
                      "description": "the vnet name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the virtual network peering"
                    },
                    {
                      "flags": "-a, --allow-vnet-access [allow-vnet-access]",
                      "required": 0,
                      "optional": -25,
                      "bool": true,
                      "short": "-a",
                      "long": "--allow-vnet-access",
                      "description": "whether the VMs in the linked virtual\n     network space would be able to access all the VMs in local Virtual network\n     space"
                    },
                    {
                      "flags": "-f, --allow-forwarded-traffic [allow-forwarded-traffic]",
                      "required": 0,
                      "optional": -31,
                      "bool": true,
                      "short": "-f",
                      "long": "--allow-forwarded-traffic",
                      "description": "whether the forwarded traffic from the\n     VMs in the remote virtual network will be allowed/disallowed"
                    },
                    {
                      "flags": "-y, --allow-gateway-transit [allow-gateway-transit]",
                      "required": 0,
                      "optional": -29,
                      "bool": true,
                      "short": "-y",
                      "long": "--allow-gateway-transit",
                      "description": "if gateway links can be used in remote\n     virtual networking to link to this virtual network"
                    },
                    {
                      "flags": "-w, --use-remote-gateways [use-remote-gateways]",
                      "required": 0,
                      "optional": -27,
                      "bool": true,
                      "short": "-w",
                      "long": "--use-remote-gateways",
                      "description": "if remote gateways can be used on this\n     virtual network. If the flag is set to true, and allowGatewayTransit on remote\n     peering is also true, virtual network will use gateways of remote virtual\n     network for transit. Only one peering can have this flag set to true. This flag\n     cannot be set if virtual network already has a gateway"
                    },
                    {
                      "flags": "-m, --remote-vnet-name [remote-vnet-name]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-m",
                      "long": "--remote-vnet-name",
                      "description": "sets remote virtual network. This\n     option is mutually exclusive with --remote-vnet-id"
                    },
                    {
                      "flags": "-r, --remote-vnet-id [remote-vnet-id]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-r",
                      "long": "--remote-vnet-id",
                      "description": "sets remote virtual network. This\n     option is mutually exclusive with --remote-vnet-name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Update a virtual network peering",
                  "fullName": "network vnet peering set",
                  "usage": "[options] <resource-group> <vnet-name> <name>",
                  "filePath": "commands/arm/network.generated/VirtualNetworks-virtualNetworkPeerings.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-e, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--vnet-name",
                      "description": "the vnet name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the virtual network peering"
                    },
                    {
                      "flags": "-a, --allow-vnet-access [allow-vnet-access]",
                      "required": 0,
                      "optional": -25,
                      "bool": true,
                      "short": "-a",
                      "long": "--allow-vnet-access",
                      "description": "whether the VMs in the linked virtual\n     network space would be able to access all the VMs in local Virtual network\n     space"
                    },
                    {
                      "flags": "-f, --allow-forwarded-traffic [allow-forwarded-traffic]",
                      "required": 0,
                      "optional": -31,
                      "bool": true,
                      "short": "-f",
                      "long": "--allow-forwarded-traffic",
                      "description": "whether the forwarded traffic from the\n     VMs in the remote virtual network will be allowed/disallowed"
                    },
                    {
                      "flags": "-y, --allow-gateway-transit [allow-gateway-transit]",
                      "required": 0,
                      "optional": -29,
                      "bool": true,
                      "short": "-y",
                      "long": "--allow-gateway-transit",
                      "description": "if gateway links can be used in remote\n     virtual networking to link to this virtual network"
                    },
                    {
                      "flags": "-w, --use-remote-gateways [use-remote-gateways]",
                      "required": 0,
                      "optional": -27,
                      "bool": true,
                      "short": "-w",
                      "long": "--use-remote-gateways",
                      "description": "if remote gateways can be used on this\n     virtual network. If the flag is set to true, and allowGatewayTransit on remote\n     peering is also true, virtual network will use gateways of remote virtual\n     network for transit. Only one peering can have this flag set to true. This flag\n     cannot be set if virtual network already has a gateway"
                    },
                    {
                      "flags": "-m, --remote-vnet-name [remote-vnet-name]",
                      "required": 0,
                      "optional": -24,
                      "bool": true,
                      "short": "-m",
                      "long": "--remote-vnet-name",
                      "description": "sets remote virtual network. This\n     option is mutually exclusive with --remote-vnet-id"
                    },
                    {
                      "flags": "-r, --remote-vnet-id [remote-vnet-id]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-r",
                      "long": "--remote-vnet-id",
                      "description": "sets remote virtual network. This\n     option is mutually exclusive with --remote-vnet-name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a virtual network peering",
                  "fullName": "network vnet peering delete",
                  "usage": "[options] <resource-group> <vnet-name> <name>",
                  "filePath": "commands/arm/network.generated/VirtualNetworks-virtualNetworkPeerings.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-e, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--vnet-name",
                      "description": "the vnet name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the virtual network peering"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a virtual network peering",
                  "fullName": "network vnet peering show",
                  "usage": "[options] <resource-group> <vnet-name> <name>",
                  "filePath": "commands/arm/network.generated/VirtualNetworks-virtualNetworkPeerings.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-e, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--vnet-name",
                      "description": "the vnet name"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the virtual network peering"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List virtual network peerings",
                  "fullName": "network vnet peering list",
                  "usage": "[options] <resource-group> <vnet-name>",
                  "filePath": "commands/arm/network.generated/VirtualNetworks-virtualNetworkPeerings.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-e, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--vnet-name",
                      "description": "the vnet name"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "application-security-group": {
          "name": "application-security-group",
          "description": "Commands to manage application security groups",
          "fullName": "network application-security-group",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create an application security group",
              "fullName": "network application-security-group create",
              "usage": "[options] <resource-group> <name> <location>",
              "filePath": "commands/arm/network.generated/applicationSecurityGroups.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the application security group"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "set",
              "description": "Update an application security group",
              "fullName": "network application-security-group set",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/applicationSecurityGroups.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the application security group"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete an application security group",
              "fullName": "network application-security-group delete",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/applicationSecurityGroups.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the application security group"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode, do not ask for delete confirmation"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show an application security group",
              "fullName": "network application-security-group show",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/applicationSecurityGroups.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the application security group"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list",
              "description": "List application security groups",
              "fullName": "network application-security-group list",
              "usage": "[options] <resource-group>",
              "filePath": "commands/arm/network.generated/applicationSecurityGroups.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group [resource-group]",
                  "required": 0,
                  "optional": -22,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "endpoint-service": {
          "name": "endpoint-service",
          "description": "Commands to manage available endpoint services",
          "fullName": "network endpoint-service",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List available endpoint services",
              "fullName": "network endpoint-service list",
              "usage": "[options] <location>",
              "filePath": "commands/arm/network.generated/availableEndpointServices.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "local-gateway": {
          "name": "local-gateway",
          "description": "Commands to manage local network gateways",
          "fullName": "network local-gateway",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a local network gateway",
              "fullName": "network local-gateway create",
              "usage": "[options] <resource-group> <name> <location> <ip-address>",
              "filePath": "commands/arm/network.generated/localNetworkGateways.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the local network gateway"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-a, --address-space [address-space]",
                  "required": 0,
                  "optional": -21,
                  "bool": true,
                  "short": "-a",
                  "long": "--address-space",
                  "description": "a list of address blocks reserved for\n     this virtual network in CIDR notation"
                },
                {
                  "flags": "-i, --ip-address <ip-address>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--ip-address",
                  "description": "ip address of local network gateway"
                },
                {
                  "flags": "-j, --asn [asn]",
                  "required": 0,
                  "optional": -11,
                  "bool": true,
                  "short": "-j",
                  "long": "--asn",
                  "description": "the BGP speaker's ASN"
                },
                {
                  "flags": "-b, --bgp-peering-address [bgp-peering-address]",
                  "required": 0,
                  "optional": -27,
                  "bool": true,
                  "short": "-b",
                  "long": "--bgp-peering-address",
                  "description": "the BGP peering address and BGP\n     identifier of this BGP speaker"
                },
                {
                  "flags": "-w, --peer-weight [peer-weight]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-w",
                  "long": "--peer-weight",
                  "description": "the weight added to routes learned from\n     this BGP speaker"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "set",
              "description": "Update a local network gateway",
              "fullName": "network local-gateway set",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/localNetworkGateways.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the local network gateway"
                },
                {
                  "flags": "-a, --address-space [address-space]",
                  "required": 0,
                  "optional": -21,
                  "bool": true,
                  "short": "-a",
                  "long": "--address-space",
                  "description": "a list of address blocks reserved for\n     this virtual network in CIDR notation"
                },
                {
                  "flags": "-i, --ip-address [ip-address]",
                  "required": 0,
                  "optional": -18,
                  "bool": true,
                  "short": "-i",
                  "long": "--ip-address",
                  "description": "ip address of local network gateway"
                },
                {
                  "flags": "-j, --asn [asn]",
                  "required": 0,
                  "optional": -11,
                  "bool": true,
                  "short": "-j",
                  "long": "--asn",
                  "description": "the BGP speaker's ASN"
                },
                {
                  "flags": "-b, --bgp-peering-address [bgp-peering-address]",
                  "required": 0,
                  "optional": -27,
                  "bool": true,
                  "short": "-b",
                  "long": "--bgp-peering-address",
                  "description": "the BGP peering address and BGP\n     identifier of this BGP speaker"
                },
                {
                  "flags": "-w, --peer-weight [peer-weight]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-w",
                  "long": "--peer-weight",
                  "description": "the weight added to routes learned from\n     this BGP speaker"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a local network gateway",
              "fullName": "network local-gateway delete",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/localNetworkGateways.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the local network gateway"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode, do not ask for delete confirmation"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show a local network gateway",
              "fullName": "network local-gateway show",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/localNetworkGateways.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the local network gateway"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list",
              "description": "List local network gateways",
              "fullName": "network local-gateway list",
              "usage": "[options] <resource-group>",
              "filePath": "commands/arm/network.generated/localNetworkGateways.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "public-ip": {
          "name": "public-ip",
          "description": "Commands to manage public ip addresses",
          "fullName": "network public-ip",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a public ip address",
              "fullName": "network public-ip create",
              "usage": "[options] <resource-group> <name> <location>",
              "filePath": "commands/arm/network.generated/publicIPAddresses.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the public ip address"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-k, --sku-name [sku-name]",
                  "required": 0,
                  "optional": -16,
                  "bool": true,
                  "short": "-k",
                  "long": "--sku-name",
                  "description": "name of a public IP address SKU"
                },
                {
                  "flags": "-a, --allocation-method [allocation-method]",
                  "required": 0,
                  "optional": -25,
                  "bool": true,
                  "short": "-a",
                  "long": "--allocation-method",
                  "description": "the public IP allocation method.\n     Possible values are: 'Static' and 'Dynamic'"
                },
                {
                  "flags": "-e, --ip-version [ip-version]",
                  "required": 0,
                  "optional": -18,
                  "bool": true,
                  "short": "-e",
                  "long": "--ip-version",
                  "description": "the public IP address version. Possible\n     values are: 'IPv4' and 'IPv6'"
                },
                {
                  "flags": "-d, --domain-name-label [domain-name-label]",
                  "required": 0,
                  "optional": -25,
                  "bool": true,
                  "short": "-d",
                  "long": "--domain-name-label",
                  "description": "sets the Domain name label.The\n     concatenation of the domain name label and the regionalized DNS zone make up\n     the fully qualified domain name associated with the public IP address. If a\n     domain name label is specified, an A DNS record is created for the public IP in\n     the Microsoft Azure DNS system"
                },
                {
                  "flags": "-f, --reverse-fqdn [reverse-fqdn]",
                  "required": 0,
                  "optional": -20,
                  "bool": true,
                  "short": "-f",
                  "long": "--reverse-fqdn",
                  "description": "sets the Reverse FQDN. A user-visible,\n     fully qualified domain name that resolves to this public IP address. If the\n     reverseFqdn is specified, then a PTR DNS record is created pointing from the IP\n     address in the in-addr.arpa domain to the reverse FQDN"
                },
                {
                  "flags": "-i, --idle-timeout [idle-timeout]",
                  "required": 0,
                  "optional": -20,
                  "bool": true,
                  "short": "-i",
                  "long": "--idle-timeout",
                  "description": "the idle timeout of the public IP\n     address"
                },
                {
                  "flags": "-z, --zones [zones]",
                  "required": 0,
                  "optional": -13,
                  "bool": true,
                  "short": "-z",
                  "long": "--zones",
                  "description": "a list of availability zones denoting\n     the IP allocated for the resource needs to come from"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "set",
              "description": "Update a public ip address",
              "fullName": "network public-ip set",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/publicIPAddresses.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the public ip address"
                },
                {
                  "flags": "-k, --sku-name [sku-name]",
                  "required": 0,
                  "optional": -16,
                  "bool": true,
                  "short": "-k",
                  "long": "--sku-name",
                  "description": "name of a public IP address SKU"
                },
                {
                  "flags": "-a, --allocation-method [allocation-method]",
                  "required": 0,
                  "optional": -25,
                  "bool": true,
                  "short": "-a",
                  "long": "--allocation-method",
                  "description": "the public IP allocation method.\n     Possible values are: 'Static' and 'Dynamic'"
                },
                {
                  "flags": "-d, --domain-name-label [domain-name-label]",
                  "required": 0,
                  "optional": -25,
                  "bool": true,
                  "short": "-d",
                  "long": "--domain-name-label",
                  "description": "sets the Domain name label.The\n     concatenation of the domain name label and the regionalized DNS zone make up\n     the fully qualified domain name associated with the public IP address. If a\n     domain name label is specified, an A DNS record is created for the public IP in\n     the Microsoft Azure DNS system"
                },
                {
                  "flags": "-f, --reverse-fqdn [reverse-fqdn]",
                  "required": 0,
                  "optional": -20,
                  "bool": true,
                  "short": "-f",
                  "long": "--reverse-fqdn",
                  "description": "sets the Reverse FQDN. A user-visible,\n     fully qualified domain name that resolves to this public IP address. If the\n     reverseFqdn is specified, then a PTR DNS record is created pointing from the IP\n     address in the in-addr.arpa domain to the reverse FQDN"
                },
                {
                  "flags": "-i, --idle-timeout [idle-timeout]",
                  "required": 0,
                  "optional": -20,
                  "bool": true,
                  "short": "-i",
                  "long": "--idle-timeout",
                  "description": "the idle timeout of the public IP\n     address"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a public ip address",
              "fullName": "network public-ip delete",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/publicIPAddresses.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the public ip address"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode, do not ask for delete confirmation"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show a public ip address",
              "fullName": "network public-ip show",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network/network.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the public ip address"
                },
                {
                  "flags": "-v, --vmss-name [vmss-name]",
                  "required": 0,
                  "optional": -17,
                  "bool": true,
                  "short": "-v",
                  "long": "--vmss-name",
                  "description": "the name of the vmss"
                },
                {
                  "flags": "-m, --vm-index [vm-index]",
                  "required": 0,
                  "optional": -16,
                  "bool": true,
                  "short": "-m",
                  "long": "--vm-index",
                  "description": "the vm index"
                },
                {
                  "flags": "-c, --nic-name [nic-name]",
                  "required": 0,
                  "optional": -16,
                  "bool": true,
                  "short": "-c",
                  "long": "--nic-name",
                  "description": "the nic name"
                },
                {
                  "flags": "-i, --ip-config-name [ip-config-name]",
                  "required": 0,
                  "optional": -22,
                  "bool": true,
                  "short": "-i",
                  "long": "--ip-config-name",
                  "description": "the ip config name"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list",
              "description": "List public ip addresses",
              "fullName": "network public-ip list",
              "usage": "[options] <resource-group>",
              "filePath": "commands/arm/network/network.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group [resource-group]",
                  "required": 0,
                  "optional": -22,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-v, --vmss-name [vmss-name]",
                  "required": 0,
                  "optional": -17,
                  "bool": true,
                  "short": "-v",
                  "long": "--vmss-name",
                  "description": "the name of the vmss"
                },
                {
                  "flags": "-m, --vm-index [vm-index]",
                  "required": 0,
                  "optional": -16,
                  "bool": true,
                  "short": "-m",
                  "long": "--vm-index",
                  "description": "the vm index"
                },
                {
                  "flags": "-c, --nic-name [nic-name]",
                  "required": 0,
                  "optional": -16,
                  "bool": true,
                  "short": "-c",
                  "long": "--nic-name",
                  "description": "the nic name"
                },
                {
                  "flags": "-i, --ip-config-name [ip-config-name]",
                  "required": 0,
                  "optional": -22,
                  "bool": true,
                  "short": "-i",
                  "long": "--ip-config-name",
                  "description": "the ip config name"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "usage": {
          "name": "usage",
          "description": "Commands to manage usages",
          "fullName": "network usage",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List usages",
              "fullName": "network usage list",
              "usage": "[options] <location>",
              "filePath": "commands/arm/network.generated/usages.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "vpn-gateway": {
          "name": "vpn-gateway",
          "description": "Commands to manage Virtual Network Gateways",
          "fullName": "network vpn-gateway",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a virtual network gateway",
              "fullName": "network vpn-gateway create",
              "usage": "[options] <resource-group> <name> <location>",
              "filePath": "commands/arm/network.generated/virtualNetworkGateways.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the virtual network gateway"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-e, --subnet-name [subnet-name]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-e",
                  "long": "--subnet-name",
                  "description": "sets subnet. This option is mutually\n     exclusive with --subnet-id"
                },
                {
                  "flags": "-m, --vnet-name [vnet-name]",
                  "required": 0,
                  "optional": -17,
                  "bool": true,
                  "short": "-m",
                  "long": "--vnet-name",
                  "description": "name of the virtual network that contains subnet"
                },
                {
                  "flags": "-f, --subnet-id [subnet-id]",
                  "required": 0,
                  "optional": -17,
                  "bool": true,
                  "short": "-f",
                  "long": "--subnet-id",
                  "description": "sets subnet. This option is mutually\n     exclusive with --subnet-name"
                },
                {
                  "flags": "-p, --public-ip-name [public-ip-name]",
                  "required": 0,
                  "optional": -22,
                  "bool": true,
                  "short": "-p",
                  "long": "--public-ip-name",
                  "description": "sets public ip address. This option is\n     mutually exclusive with --public-ip-id"
                },
                {
                  "flags": "-u, --public-ip-id [public-ip-id]",
                  "required": 0,
                  "optional": -20,
                  "bool": true,
                  "short": "-u",
                  "long": "--public-ip-id",
                  "description": "sets public ip address. This option is\n     mutually exclusive with --public-ip-name"
                },
                {
                  "flags": "-w, --gateway-type [gateway-type]",
                  "required": 0,
                  "optional": -20,
                  "bool": true,
                  "short": "-w",
                  "long": "--gateway-type",
                  "description": "the type of this virtual network\n     gateway. Possible values are: 'Vpn' and 'ExpressRoute'"
                },
                {
                  "flags": "-y, --vpn-type [vpn-type]",
                  "required": 0,
                  "optional": -16,
                  "bool": true,
                  "short": "-y",
                  "long": "--vpn-type",
                  "description": "the type of this virtual network\n     gateway. Possible values are: 'PolicyBased' and 'RouteBased'"
                },
                {
                  "flags": "-b, --enable-bgp [enable-bgp]",
                  "required": 0,
                  "optional": -18,
                  "bool": true,
                  "short": "-b",
                  "long": "--enable-bgp",
                  "description": "whether BGP is enabled for this virtual\n     network gateway or not"
                },
                {
                  "flags": "-r, --enable-active-active-feature [enable-active-active-feature]",
                  "required": 0,
                  "optional": -36,
                  "bool": true,
                  "short": "-r",
                  "long": "--enable-active-active-feature",
                  "description": "activeActive flag"
                },
                {
                  "flags": "-d, --default-site-name [default-site-name]",
                  "required": 0,
                  "optional": -25,
                  "bool": true,
                  "short": "-d",
                  "long": "--default-site-name",
                  "description": "sets gateway default site. This option\n     is mutually exclusive with --default-site-id"
                },
                {
                  "flags": "-i, --default-site-id [default-site-id]",
                  "required": 0,
                  "optional": -23,
                  "bool": true,
                  "short": "-i",
                  "long": "--default-site-id",
                  "description": "sets gateway default site. This option\n     is mutually exclusive with --default-site-name"
                },
                {
                  "flags": "-k, --sku-name [sku-name]",
                  "required": 0,
                  "optional": -16,
                  "bool": true,
                  "short": "-k",
                  "long": "--sku-name",
                  "description": "gateway SKU name"
                },
                {
                  "flags": "-c, --address-prefixes [address-prefixes]",
                  "required": 0,
                  "optional": -24,
                  "bool": true,
                  "short": "-c",
                  "long": "--address-prefixes",
                  "description": "a list of address blocks reserved for\n     this virtual network in CIDR notation"
                },
                {
                  "flags": "-a, --bgp-asn [bgp-asn]",
                  "required": 0,
                  "optional": -15,
                  "bool": true,
                  "short": "-a",
                  "long": "--bgp-asn",
                  "description": "the BGP speaker's ASN"
                },
                {
                  "flags": "-o, --bgp-peering-address [bgp-peering-address]",
                  "required": 0,
                  "optional": -27,
                  "bool": true,
                  "short": "-o",
                  "long": "--bgp-peering-address",
                  "description": "the BGP peering address and BGP\n     identifier of this BGP speaker"
                },
                {
                  "flags": "-j, --bgp-peer-weight [bgp-peer-weight]",
                  "required": 0,
                  "optional": -23,
                  "bool": true,
                  "short": "-j",
                  "long": "--bgp-peer-weight",
                  "description": "the weight added to routes learned from\n     this BGP speaker"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "set",
              "description": "Update a virtual network gateway",
              "fullName": "network vpn-gateway set",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/virtualNetworkGateways.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the virtual network gateway"
                },
                {
                  "flags": "-b, --enable-bgp [enable-bgp]",
                  "required": 0,
                  "optional": -18,
                  "bool": true,
                  "short": "-b",
                  "long": "--enable-bgp",
                  "description": "whether BGP is enabled for this virtual\n     network gateway or not"
                },
                {
                  "flags": "-r, --enable-active-active-feature [enable-active-active-feature]",
                  "required": 0,
                  "optional": -36,
                  "bool": true,
                  "short": "-r",
                  "long": "--enable-active-active-feature",
                  "description": "activeActive flag"
                },
                {
                  "flags": "-d, --default-site-name [default-site-name]",
                  "required": 0,
                  "optional": -25,
                  "bool": true,
                  "short": "-d",
                  "long": "--default-site-name",
                  "description": "sets gateway default site. This option\n     is mutually exclusive with --default-site-id"
                },
                {
                  "flags": "-i, --default-site-id [default-site-id]",
                  "required": 0,
                  "optional": -23,
                  "bool": true,
                  "short": "-i",
                  "long": "--default-site-id",
                  "description": "sets gateway default site. This option\n     is mutually exclusive with --default-site-name"
                },
                {
                  "flags": "-k, --sku-name [sku-name]",
                  "required": 0,
                  "optional": -16,
                  "bool": true,
                  "short": "-k",
                  "long": "--sku-name",
                  "description": "gateway SKU name"
                },
                {
                  "flags": "-c, --address-prefixes [address-prefixes]",
                  "required": 0,
                  "optional": -24,
                  "bool": true,
                  "short": "-c",
                  "long": "--address-prefixes",
                  "description": "a list of address blocks reserved for\n     this virtual network in CIDR notation"
                },
                {
                  "flags": "-a, --bgp-asn [bgp-asn]",
                  "required": 0,
                  "optional": -15,
                  "bool": true,
                  "short": "-a",
                  "long": "--bgp-asn",
                  "description": "the BGP speaker's ASN"
                },
                {
                  "flags": "-o, --bgp-peering-address [bgp-peering-address]",
                  "required": 0,
                  "optional": -27,
                  "bool": true,
                  "short": "-o",
                  "long": "--bgp-peering-address",
                  "description": "the BGP peering address and BGP\n     identifier of this BGP speaker"
                },
                {
                  "flags": "-j, --bgp-peer-weight [bgp-peer-weight]",
                  "required": 0,
                  "optional": -23,
                  "bool": true,
                  "short": "-j",
                  "long": "--bgp-peer-weight",
                  "description": "the weight added to routes learned from\n     this BGP speaker"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a virtual network gateway",
              "fullName": "network vpn-gateway delete",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/virtualNetworkGateways.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the virtual network gateway"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode, do not ask for delete confirmation"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show a virtual network gateway",
              "fullName": "network vpn-gateway show",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network.generated/virtualNetworkGateways.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the virtual network gateway"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list",
              "description": "List virtual network gateways",
              "fullName": "network vpn-gateway list",
              "usage": "[options] <resource-group>",
              "filePath": "commands/arm/network.generated/virtualNetworkGateways.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {
            "root-cert": {
              "name": "root-cert",
              "description": "Commands to manage Virtual Network Gateways Root Certificates",
              "fullName": "network vpn-gateway root-cert",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Add a root certificate to a virtual network gateway",
                  "fullName": "network vpn-gateway root-cert create",
                  "usage": "[options] <resource-group> <name> <cert-name> <cert-file>",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the virtual network gateway"
                    },
                    {
                      "flags": "-c, --cert-name <cert-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--cert-name",
                      "description": "the name of the root certificate"
                    },
                    {
                      "flags": "-f, --cert-file <cert-file>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--cert-file",
                      "description": "the path to the root certificate"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a root certificate from a virtual network gateway",
                  "fullName": "network vpn-gateway root-cert delete",
                  "usage": "[options] <resource-group> <name> <cert-name>",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the virtual network gateway"
                    },
                    {
                      "flags": "-c, --cert-name <cert-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--cert-name",
                      "description": "the name of the root certificate"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "revoked-cert": {
              "name": "revoked-cert",
              "description": "Commands to manage Virtual Network Gateways Revoked Certificates",
              "fullName": "network vpn-gateway revoked-cert",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Add a revoked certificate to a virtual network gateway",
                  "fullName": "network vpn-gateway revoked-cert create",
                  "usage": "[options] <resource-group> <name> <cert-name> <thumbprint>",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the virtual network gateway"
                    },
                    {
                      "flags": "-c, --cert-name <cert-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--cert-name",
                      "description": "the name of the revoked certificate"
                    },
                    {
                      "flags": "-f, --thumbprint <thumbprint>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--thumbprint",
                      "description": "the certificate thumbprint"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a revoked certificate from a virtual network gateway",
                  "fullName": "network vpn-gateway revoked-cert delete",
                  "usage": "[options] <resource-group> <name> <cert-name>",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the virtual network gateway"
                    },
                    {
                      "flags": "-c, --cert-name <cert-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--cert-name",
                      "description": "the name of the revoked certificate"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "dns": {
          "name": "dns",
          "description": "Commands to manage DNS",
          "fullName": "network dns",
          "usage": "[options]",
          "options": [],
          "commands": [],
          "categories": {
            "zone": {
              "name": "zone",
              "description": "Commands to manage DNS zone",
              "fullName": "network dns zone",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a DNS zone",
                  "fullName": "network dns zone create",
                  "usage": "[options] <resource-group> <name>",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the DNS zone"
                    },
                    {
                      "flags": "-t, --tags [tags]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-t",
                      "long": "--tags",
                      "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Set a DNS zone",
                  "fullName": "network dns zone set",
                  "usage": "[options] <resource-group> <name>",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the DNS zone"
                    },
                    {
                      "flags": "-t, --tags [tags]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-t",
                      "long": "--tags",
                      "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     Existing tag values will be replaced by the values specified.\n     For example, -t \"tag1=value1;tag2\""
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "Get all DNS zones",
                  "fullName": "network dns zone list",
                  "usage": "[options] [resource-group]",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group [resource-group]",
                      "required": 0,
                      "optional": -22,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Get a DNS zone",
                  "fullName": "network dns zone show",
                  "usage": "[options] <resource-group> <name>",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the DNS zone\n     You can specify \"*\" (in quotes) for this parameter"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "clear",
                  "description": "Delete all record sets in a DNS zone",
                  "fullName": "network dns zone clear",
                  "usage": "[options] <resource-group> <name>",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the DNS zone"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for clear confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a DNS zone. WARNING: This will delete the DNS zone and all DNS records. This operation cannot be undone.",
                  "fullName": "network dns zone delete",
                  "usage": "[options] <resource-group> <name>",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the DNS zone"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "import",
                  "description": "Import a DNS zone",
                  "fullName": "network dns zone import",
                  "usage": "[options] <resource-group> <name> <file-name>",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the DNS zone"
                    },
                    {
                      "flags": "-f, --file-name <file-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--file-name",
                      "description": "the name of the zone file"
                    },
                    {
                      "flags": "--force",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--force",
                      "description": "force overwrite of existing record sets. Otherwise, records are merged with existing record sets"
                    },
                    {
                      "flags": "--debug",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--debug",
                      "description": "output debug info"
                    },
                    {
                      "flags": "--parse-only",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--parse-only",
                      "description": "parse zone file only, without import"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "export",
                  "description": "Export a DNS zone as a zone file",
                  "fullName": "network dns zone export",
                  "usage": "[options] <resource-group> <name> <file-name>",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the DNS zone"
                    },
                    {
                      "flags": "-f, --file-name <file-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--file-name",
                      "description": "the name of the zone file"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for overwrite confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "record-set": {
              "name": "record-set",
              "description": "Commands to manage record sets in DNS zone",
              "fullName": "network dns record-set",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a DNS zone record set",
                  "fullName": "network dns record-set create",
                  "usage": "[options] <resource-group> <dns-zone-name> <name> <type>",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-z, --dns-zone-name <dns-zone-name>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-z",
                      "long": "--dns-zone-name",
                      "description": "the name of the DNS zone"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the relative name of the record set within the DNS zone"
                    },
                    {
                      "flags": "-y, --type <type>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-y",
                      "long": "--type",
                      "description": "the type of the record set, valid values are\n     [A,AAAA,CAA,CNAME,MX,NS,PTR,SRV,TXT]"
                    },
                    {
                      "flags": "-l, --ttl [ttl]",
                      "required": 0,
                      "optional": -11,
                      "bool": true,
                      "short": "-l",
                      "long": "--ttl",
                      "description": "time to live specified in seconds"
                    },
                    {
                      "flags": "-m, --metadata [metadata]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-m",
                      "long": "--metadata",
                      "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Set a DNS zone record set",
                  "fullName": "network dns record-set set",
                  "usage": "[options] <resource-group> <dns-zone-name> <name> <type>",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-z, --dns-zone-name <dns-zone-name>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-z",
                      "long": "--dns-zone-name",
                      "description": "the name of the DNS zone"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the relative name of the record set within the DNS zone"
                    },
                    {
                      "flags": "-y, --type <type>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-y",
                      "long": "--type",
                      "description": "the type of the record set, valid values are\n     [A,AAAA,CAA,CNAME,MX,NS,PTR,SOA,SRV,TXT]"
                    },
                    {
                      "flags": "-l, --ttl [ttl]",
                      "required": 0,
                      "optional": -11,
                      "bool": true,
                      "short": "-l",
                      "long": "--ttl",
                      "description": "time to live specified in seconds"
                    },
                    {
                      "flags": "-m, --metadata [metadata]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-m",
                      "long": "--metadata",
                      "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set-soa-record",
                  "description": "Set a SOA record in a record set under a DNS zone",
                  "fullName": "network dns record-set set-soa-record",
                  "usage": "[options] <resource-group> <dns-zone-name> <record-set-name>",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-z, --dns-zone-name <dns-zone-name>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-z",
                      "long": "--dns-zone-name",
                      "description": "the name of the DNS zone"
                    },
                    {
                      "flags": "-e, --email [email]",
                      "required": 0,
                      "optional": -13,
                      "bool": true,
                      "short": "-e",
                      "long": "--email",
                      "description": "the email attribute"
                    },
                    {
                      "flags": "-i, --expire-time [expire-time]",
                      "required": 0,
                      "optional": -19,
                      "bool": true,
                      "short": "-i",
                      "long": "--expire-time",
                      "description": "the expire time specified in seconds"
                    },
                    {
                      "flags": "-S, --serial-number [serial-number]",
                      "required": 0,
                      "optional": -21,
                      "bool": true,
                      "short": "-S",
                      "long": "--serial-number",
                      "description": "the serial number"
                    },
                    {
                      "flags": "-n, --minimum-ttl [minimum-ttl]",
                      "required": 0,
                      "optional": -19,
                      "bool": true,
                      "short": "-n",
                      "long": "--minimum-ttl",
                      "description": "the minimum time to live specified in seconds"
                    },
                    {
                      "flags": "-r, --refresh-time [refresh-time]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-r",
                      "long": "--refresh-time",
                      "description": "the refresh time specified in seconds"
                    },
                    {
                      "flags": "-j, --retry-time [retry-time]",
                      "required": 0,
                      "optional": -18,
                      "bool": true,
                      "short": "-j",
                      "long": "--retry-time",
                      "description": "the retry time specified in seconds"
                    },
                    {
                      "flags": "-l, --ttl [ttl]",
                      "required": 0,
                      "optional": -11,
                      "bool": true,
                      "short": "-l",
                      "long": "--ttl",
                      "description": "time to live specified in seconds"
                    },
                    {
                      "flags": "-m, --metadata [metadata]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-m",
                      "long": "--metadata",
                      "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "Get all record sets in a DNS zone",
                  "fullName": "network dns record-set list",
                  "usage": "[options] <resource-group> <dns-zone-name> [type]",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-z, --dns-zone-name <dns-zone-name>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-z",
                      "long": "--dns-zone-name",
                      "description": "the name of the DNS zone"
                    },
                    {
                      "flags": "-y, --type [type]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-y",
                      "long": "--type",
                      "description": "the type of the record set, \n     If specified only record sets of this type will be listed.\n     valid values are [A,AAAA,CAA,CNAME,MX,NS,PTR,SOA,SRV,TXT]"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Get a record set in a DNS zone",
                  "fullName": "network dns record-set show",
                  "usage": "[options] <resource-group> <dns-zone-name> <name> <type>",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-z, --dns-zone-name <dns-zone-name>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-z",
                      "long": "--dns-zone-name",
                      "description": "the name of the DNS zone"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the relative name of the record set within the DNS zone"
                    },
                    {
                      "flags": "-y, --type <type>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-y",
                      "long": "--type",
                      "description": "the type of the record set, \n     valid values are [A,AAAA,CAA,CNAME,MX,NS,PTR,SOA,SRV,TXT]"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a record set from a DNS zone",
                  "fullName": "network dns record-set delete",
                  "usage": "[options] <resource-group> <dns-zone-name> <name> <type>",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-z, --dns-zone-name <dns-zone-name>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-z",
                      "long": "--dns-zone-name",
                      "description": "the name of the DNS zone"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the relative name of the record set within the DNS zone"
                    },
                    {
                      "flags": "-y, --type <type>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-y",
                      "long": "--type",
                      "description": "the type of the record set, \n     valid values are [A,AAAA,CAA,CNAME,MX,NS,PTR,SRV,TXT]"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "add-record",
                  "description": "Add a record in a record set under a DNS zone",
                  "fullName": "network dns record-set add-record",
                  "usage": "[options] <resource-group> <dns-zone-name> <record-set-name> <type>",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-z, --dns-zone-name <dns-zone-name>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-z",
                      "long": "--dns-zone-name",
                      "description": "the name of the DNS zone"
                    },
                    {
                      "flags": "-n, --record-set-name <record-set-name>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--record-set-name",
                      "description": "the name of the record set"
                    },
                    {
                      "flags": "-y, --type <type>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-y",
                      "long": "--type",
                      "description": "the type of the record set.\nValid values are [A,AAAA,CAA,CNAME,MX,NS,PTR,SRV,TXT]\nTo update the SOA record see \"azure network dns record-set set-soa-record --help\"\n\nThe record type A"
                    },
                    {
                      "flags": "-a  --ipv4-address [ipv4-address]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-a",
                      "long": "--ipv4-address",
                      "description": "the IPv4 address attribute\n\nRecord type AAAA"
                    },
                    {
                      "flags": "-b  --ipv6-address [ipv6-address]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-b",
                      "long": "--ipv6-address",
                      "description": "the IPv6 address attribute\n\nRecord type CAA"
                    },
                    {
                      "flags": "-i, --caaflags [flags]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-i",
                      "long": "--caaflags",
                      "description": "the flags attribute"
                    },
                    {
                      "flags": "-k, --caatag [tag]",
                      "required": 0,
                      "optional": -14,
                      "bool": true,
                      "short": "-k",
                      "long": "--caatag",
                      "description": "the tag attribute"
                    },
                    {
                      "flags": "-m, --caavalue [value]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-m",
                      "long": "--caavalue",
                      "description": "the value attribute\n\nRecord type CNAME"
                    },
                    {
                      "flags": "-c  --cname [cname]",
                      "required": 0,
                      "optional": -13,
                      "bool": true,
                      "short": "-c",
                      "long": "--cname",
                      "description": "the canonical name (target)\n\nRecord type MX"
                    },
                    {
                      "flags": "-f, --preference [preference]",
                      "required": 0,
                      "optional": -18,
                      "bool": true,
                      "short": "-f",
                      "long": "--preference",
                      "description": "preference attribute"
                    },
                    {
                      "flags": "-e, --exchange [exchange]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-e",
                      "long": "--exchange",
                      "description": "exchange attribute\n\nRecord type PTR"
                    },
                    {
                      "flags": "-P, --ptrdname [ptrdname]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-P",
                      "long": "--ptrdname",
                      "description": "ptr domain name\n\nRecord type NS"
                    },
                    {
                      "flags": "-d  --nsdname [nsdname]",
                      "required": 0,
                      "optional": -15,
                      "bool": true,
                      "short": "-d",
                      "long": "--nsdname",
                      "description": "the domain name attribute\n\nRecord type SRV"
                    },
                    {
                      "flags": "-p, --priority [priority]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-p",
                      "long": "--priority",
                      "description": "the priority attribute"
                    },
                    {
                      "flags": "-w, --weight [weight]",
                      "required": 0,
                      "optional": -14,
                      "bool": true,
                      "short": "-w",
                      "long": "--weight",
                      "description": "the weight attribute"
                    },
                    {
                      "flags": "-o, --port [port]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-o",
                      "long": "--port",
                      "description": "the port"
                    },
                    {
                      "flags": "-u, --target [target]",
                      "required": 0,
                      "optional": -14,
                      "bool": true,
                      "short": "-u",
                      "long": "--target",
                      "description": "the target attribute\n\nRecord type TXT"
                    },
                    {
                      "flags": "-x, --text [text]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-x",
                      "long": "--text",
                      "description": "the text attribute\n"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask before replacing existing CNAME record"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete-record",
                  "description": "Delete a record from a record set under a DNS zone",
                  "fullName": "network dns record-set delete-record",
                  "usage": "[options] <resource-group> <dns-zone> <record-set-name> <type>",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-z, --dns-zone-name <dns-zone-name>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-z",
                      "long": "--dns-zone-name",
                      "description": "the name of the DNS zone"
                    },
                    {
                      "flags": "-n, --record-set-name <record-set-name>",
                      "required": -23,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--record-set-name",
                      "description": "the name of the record set"
                    },
                    {
                      "flags": "-y, --type <type>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-y",
                      "long": "--type",
                      "description": "the type of the record set.\n     Valid values are [A,AAAA,CAA,CNAME,MX,NS,PTR,SRV,TXT]\nThe record type A \n"
                    },
                    {
                      "flags": "-a  --ipv4-address [ipv4-address]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-a",
                      "long": "--ipv4-address",
                      "description": "the IPv4 address attribute\n\nRecord type AAAA"
                    },
                    {
                      "flags": "-b  --ipv6-address [ipv6-address]",
                      "required": 0,
                      "optional": -20,
                      "bool": true,
                      "short": "-b",
                      "long": "--ipv6-address",
                      "description": "the IPv6 address attribute\n\nRecord type CNAME"
                    },
                    {
                      "flags": "-c  --cname [cname]",
                      "required": 0,
                      "optional": -13,
                      "bool": true,
                      "short": "-c",
                      "long": "--cname",
                      "description": "the canonical name (target)\n\nRecord type MX"
                    },
                    {
                      "flags": "-f, --preference [preference]",
                      "required": 0,
                      "optional": -18,
                      "bool": true,
                      "short": "-f",
                      "long": "--preference",
                      "description": "preference attribute"
                    },
                    {
                      "flags": "-e, --exchange [exchange]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-e",
                      "long": "--exchange",
                      "description": "exchange attribute\n\nRecord type PTR"
                    },
                    {
                      "flags": "-P, --ptrdname [ptrdname]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-P",
                      "long": "--ptrdname",
                      "description": "ptr domain name\n\nRecord type NS"
                    },
                    {
                      "flags": "-d  --nsdname [nsdname]",
                      "required": 0,
                      "optional": -15,
                      "bool": true,
                      "short": "-d",
                      "long": "--nsdname",
                      "description": "the domain name attribute\n\nRecord type SRV"
                    },
                    {
                      "flags": "-p, --priority [priority]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-p",
                      "long": "--priority",
                      "description": "the priority attribute"
                    },
                    {
                      "flags": "-w, --weight [weight]",
                      "required": 0,
                      "optional": -14,
                      "bool": true,
                      "short": "-w",
                      "long": "--weight",
                      "description": "the weight attribute"
                    },
                    {
                      "flags": "-o, --port [port]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-o",
                      "long": "--port",
                      "description": "the port"
                    },
                    {
                      "flags": "-u, --target [target]",
                      "required": 0,
                      "optional": -14,
                      "bool": true,
                      "short": "-u",
                      "long": "--target",
                      "description": "the target attribute\n\nRecord type CAA"
                    },
                    {
                      "flags": "-i, --caaflags [flags]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-i",
                      "long": "--caaflags",
                      "description": "the flags attribute"
                    },
                    {
                      "flags": "-k, --caatag [tag]",
                      "required": 0,
                      "optional": -14,
                      "bool": true,
                      "short": "-k",
                      "long": "--caatag",
                      "description": "the tag attribute"
                    },
                    {
                      "flags": "-m, --caavalue [value]",
                      "required": 0,
                      "optional": -16,
                      "bool": true,
                      "short": "-m",
                      "long": "--caavalue",
                      "description": "the value attribute\n\nRecord type TXT"
                    },
                    {
                      "flags": "-x, --text [text]",
                      "required": 0,
                      "optional": -12,
                      "bool": true,
                      "short": "-x",
                      "long": "--text",
                      "description": "the text attribute\n"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for delete confirmation"
                    },
                    {
                      "flags": "--keep-empty-record-set",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--keep-empty-record-set",
                      "description": "keep the empty record set when deleting the last record in the record set"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "vpn-connection": {
          "name": "vpn-connection",
          "description": "Commands to manage gateway connections",
          "fullName": "network vpn-connection",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a gateway connection",
              "fullName": "network vpn-connection create",
              "usage": "[options] <resource-group> <name> <location> <vnet-gateway1>",
              "filePath": "commands/arm/network/network.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the gateway connection"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-i, --vnet-gateway1 <vnet-gateway1>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--vnet-gateway1",
                  "description": "the name of the virtual network gateway"
                },
                {
                  "flags": "-r, --vnet-gateway1-group [vnet-gateway1-group]",
                  "required": 0,
                  "optional": -27,
                  "bool": true,
                  "short": "-r",
                  "long": "--vnet-gateway1-group",
                  "description": "the resource group name of the virtual network gateway"
                },
                {
                  "flags": "-e, --vnet-gateway2 [vnet-gateway2]",
                  "required": 0,
                  "optional": -21,
                  "bool": true,
                  "short": "-e",
                  "long": "--vnet-gateway2",
                  "description": "the name of the connected virtual network gateway"
                },
                {
                  "flags": "-m, --vnet-gateway2-group [vnet-gateway2-group]",
                  "required": 0,
                  "optional": -27,
                  "bool": true,
                  "short": "-m",
                  "long": "--vnet-gateway2-group",
                  "description": "the resource group name of the connected virtual network gateway"
                },
                {
                  "flags": "-d, --lnet-gateway2 [lnet-gateway2]",
                  "required": 0,
                  "optional": -21,
                  "bool": true,
                  "short": "-d",
                  "long": "--lnet-gateway2",
                  "description": "the name of the connected local network gateway"
                },
                {
                  "flags": "-z, --lnet-gateway2-group [lnet-gateway2-group]",
                  "required": 0,
                  "optional": -27,
                  "bool": true,
                  "short": "-z",
                  "long": "--lnet-gateway2-group",
                  "description": "the resource group name of the connected local network gateway"
                },
                {
                  "flags": "-p, --peer-name [peer-name]",
                  "required": 0,
                  "optional": -17,
                  "bool": true,
                  "short": "-p",
                  "long": "--peer-name",
                  "description": "the name of the connected express route circuit"
                },
                {
                  "flags": "-x, --peer-group [peer-group]",
                  "required": 0,
                  "optional": -18,
                  "bool": true,
                  "short": "-x",
                  "long": "--peer-group",
                  "description": "the resource group of the connected express route circuit"
                },
                {
                  "flags": "-b, --enable-bgp [enable-bgp]",
                  "required": 0,
                  "optional": -18,
                  "bool": true,
                  "short": "-b",
                  "long": "--enable-bgp",
                  "description": "whether BGP is enabled for this virtual network gateway or not"
                },
                {
                  "flags": "-y, --type [type]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-y",
                  "long": "--type",
                  "description": "the connection type\n     Valid values are [Vnet2Vnet,IPsec,ExpressRoute]"
                },
                {
                  "flags": "-w, --routing-weight [routing-weight]",
                  "required": 0,
                  "optional": -22,
                  "bool": true,
                  "short": "-w",
                  "long": "--routing-weight",
                  "description": "the routing weight"
                },
                {
                  "flags": "-k, --shared-key [shared-key]",
                  "required": 0,
                  "optional": -18,
                  "bool": true,
                  "short": "-k",
                  "long": "--shared-key",
                  "description": "the IPsec shared key"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                }
              ]
            },
            {
              "name": "set",
              "description": "Set a gateway connection",
              "fullName": "network vpn-connection set",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network/network.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the gateway connection"
                },
                {
                  "flags": "-w, --routing-weight [routing-weight]",
                  "required": 0,
                  "optional": -22,
                  "bool": true,
                  "short": "-w",
                  "long": "--routing-weight",
                  "description": "the routing weight"
                },
                {
                  "flags": "-b, --enable-bgp [enable-bgp]",
                  "required": 0,
                  "optional": -18,
                  "bool": true,
                  "short": "-b",
                  "long": "--enable-bgp",
                  "description": "whether BGP is enabled for this virtual network gateway or not"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                },
                {
                  "flags": "-t, --tags [tags]",
                  "required": 0,
                  "optional": -12,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     Existing tag values will be replaced by the values specified.\n     For example, -t \"tag1=value1;tag2\""
                }
              ]
            },
            {
              "name": "list",
              "description": "Get all gateway connections",
              "fullName": "network vpn-connection list",
              "usage": "[options] <resource-group>",
              "filePath": "commands/arm/network/network.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Get details about gateway connection",
              "fullName": "network vpn-connection show",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network/network.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the gateway connection"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a gateway connection",
              "fullName": "network vpn-connection delete",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/network/network.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the gateway connection"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode, do not ask for delete confirmation"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {
            "shared-key": {
              "name": "shared-key",
              "description": "Commands to manage gateway connection shared key",
              "fullName": "network vpn-connection shared-key",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set gateway connection shared key",
                  "fullName": "network vpn-connection shared-key set",
                  "usage": "[options] <resource-group> <name> <value>",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the gateway connection"
                    },
                    {
                      "flags": "-k, --value <value>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--value",
                      "description": "the shared key value"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "reset",
                  "description": "Reset gateway connection shared key",
                  "fullName": "network vpn-connection shared-key reset",
                  "usage": "[options] <resource-group> <name> <key-length>",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the gateway connection"
                    },
                    {
                      "flags": "-l, --key-length <key-length>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--key-length",
                      "description": "the shared key length"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Get details about gateway connection shared key",
                  "fullName": "network vpn-connection shared-key show",
                  "usage": "[options] <resource-group> <name>",
                  "filePath": "commands/arm/network/network.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g, --resource-group <resource-group>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the gateway connection"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        }
      }
    },
    "policy": {
      "name": "policy",
      "description": "Commands to manage your policies on ARM Resources.",
      "fullName": "policy",
      "usage": "[options]",
      "options": [],
      "commands": [],
      "categories": {
        "assignment": {
          "name": "assignment",
          "description": "Commands to manage your policy assignments.",
          "fullName": "policy assignment",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Creates a new policy assignment",
              "fullName": "policy assignment create",
              "usage": "[options] <name> <policyDefinitionId> <scope>",
              "filePath": "commands/arm/policy/policy.assignment.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the policy assignment name"
                },
                {
                  "flags": "-p --policy-definition-id <policyDefinitionId>",
                  "required": -27,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--policy-definition-id",
                  "description": "the fully qualified id of existing policy definition. For example: /subscriptions/{mySubId}/providers/Microsoft.Authorization/policyDefinitions/{myPolicy}. Use policy definition list to get a list of existing policy definitions. More information here: https://azure.microsoft.com/en-us/documentation/articles/resource-manager-policy/"
                },
                {
                  "flags": "-s --scope <scope>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--scope",
                  "description": "the scope for policy assignment. For example, /subscriptions/{mySubId}/resourceGroups/{myGroup}"
                },
                {
                  "flags": "-d --display-name <display-name>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--display-name",
                  "description": "the display name for policy assignment."
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "set",
              "description": "Updates a policy assignment",
              "fullName": "policy assignment set",
              "usage": "[options] <name> <scope>",
              "filePath": "commands/arm/policy/policy.assignment.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the policy assignment name"
                },
                {
                  "flags": "-p --policy-definition-id <policyDefinitionId>",
                  "required": -27,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--policy-definition-id",
                  "description": "the fully qualified id of existing policy definition. For example: /subscriptions/{mySubId}/providers/Microsoft.Authorization/policyDefinitions/{myPolicy}. Use policy definition list to get a list of existing policy definitions. More information here: https://azure.microsoft.com/en-us/documentation/articles/resource-manager-policy/"
                },
                {
                  "flags": "-s --scope <scope>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--scope",
                  "description": "the scope for policy assignment. For example, /subscriptions/{mySubId}/resourceGroups/{myGroup}"
                },
                {
                  "flags": "-d --display-name <display-name>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--display-name",
                  "description": "the display name for policy assignment."
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list",
              "description": "Lists all the policy assignments in the subscription.",
              "fullName": "policy assignment list",
              "usage": "[options]",
              "filePath": "commands/arm/policy/policy.assignment.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Shows a policy assignment",
              "fullName": "policy assignment show",
              "usage": "[options] <name> <scope>",
              "filePath": "commands/arm/policy/policy.assignment.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the policy assignment name"
                },
                {
                  "flags": "-s --scope <scope>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--scope",
                  "description": "the scope for policy assignment. For example, /subscriptions/{mySubId}/resourceGroups/{myGroup}"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Deletes a policy assignment",
              "fullName": "policy assignment delete",
              "usage": "[options] <name> <scope>",
              "filePath": "commands/arm/policy/policy.assignment.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the policy definition name"
                },
                {
                  "flags": "-s --scope <scope>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--scope",
                  "description": "the scope for policy assignment. For example, /subscriptions/{mySubId}/resourceGroups/{myGroup}"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode (do not ask for delete confirmation)"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "definition": {
          "name": "definition",
          "description": "Commands to manage your policy definitions.",
          "fullName": "policy definition",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Creates a new policy definition",
              "fullName": "policy definition create",
              "usage": "[options] <name> <policy>",
              "filePath": "commands/arm/policy/policy.definition.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the policy definition name"
                },
                {
                  "flags": "-p --policy <policy>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--policy",
                  "description": "the rule for policy definition. This should be a path to a file name containing the rule. More information here: https://azure.microsoft.com/en-us/documentation/articles/resource-manager-policy/",
                  "fileRelatedOption": true
                },
                {
                  "flags": "--policy-string <policyString>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--policy-string",
                  "description": "a JSON-formatted string containing the policy rule."
                },
                {
                  "flags": "-d --display-name <display-name>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--display-name",
                  "description": "the display name for policy definition."
                },
                {
                  "flags": "--description <description>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--description",
                  "description": "the description for policy definition."
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "set",
              "description": "Updates a policy definition",
              "fullName": "policy definition set",
              "usage": "[options] <name>",
              "filePath": "commands/arm/policy/policy.definition.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the policy definition name"
                },
                {
                  "flags": "-p --policy <policy>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--policy",
                  "description": "the rule for policy definition. This should be a path to a file name containing the rule. More information here: https://azure.microsoft.com/en-us/documentation/articles/resource-manager-policy/",
                  "fileRelatedOption": true
                },
                {
                  "flags": "--policy-string <policyString>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--policy-string",
                  "description": "a JSON-formatted string containing the policy rule."
                },
                {
                  "flags": "-d --display-name <display-name>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--display-name",
                  "description": "the display name for policy definition."
                },
                {
                  "flags": "--description <description>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--description",
                  "description": "the description for policy definition."
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list",
              "description": "Lists all the policy definitions in the subscription.",
              "fullName": "policy definition list",
              "usage": "[options]",
              "filePath": "commands/arm/policy/policy.definition.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Shows a policy definition",
              "fullName": "policy definition show",
              "usage": "[options] <name>",
              "filePath": "commands/arm/policy/policy.definition.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the policy definition name"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Deletes a policy definition",
              "fullName": "policy definition delete",
              "usage": "[options] <name>",
              "filePath": "commands/arm/policy/policy.definition.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the policy definition name"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode (do not ask for delete confirmation)"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        }
      }
    },
    "powerbi": {
      "name": "powerbi",
      "description": "Commands to manage your Azure Power BI Embedded Workspace Collections",
      "fullName": "powerbi",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "create",
          "description": "Create a new workspace collection",
          "fullName": "powerbi create",
          "usage": "[options] <resourceGroup> <name> <location> [tags]",
          "filePath": "commands/arm/powerbiembedded/powerbiembedded.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group <resourceGroup>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "Name of the resource group"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "The name of the new workspace collection"
            },
            {
              "flags": "-l --location <location>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-l",
              "long": "--location",
              "description": "The location (azure region/datacenter) where the workspace collection will be provisioned"
            },
            {
              "flags": "-t --tags [tags]",
              "required": 0,
              "optional": -11,
              "bool": true,
              "short": "-t",
              "long": "--tags",
              "description": "Tags to set to the resource group. Can be multiple. In the format of 'name=value'. Name is required and value is optional. For example, -t 'tag1=value1;tag2'. Providing an empty string '' will delete the tags."
            },
            {
              "flags": "-s --subscription [subscription]",
              "required": 0,
              "optional": -19,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "list",
          "description": "List workspace collections within subscription or within resource group",
          "fullName": "powerbi list",
          "usage": "[options] [resourceGroup]",
          "filePath": "commands/arm/powerbiembedded/powerbiembedded.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group [resourceGroup]",
              "required": 0,
              "optional": -21,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "Name of the resource group"
            },
            {
              "flags": "-s --subscription [subscription]",
              "required": 0,
              "optional": -19,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        }
      ],
      "categories": {
        "keys": {
          "name": "keys",
          "description": "Commands to manage your Power BI Workspace Collection keys",
          "fullName": "powerbi keys",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "Get access keys for a workspace collection",
              "fullName": "powerbi keys list",
              "usage": "[options] <resourceGroup> <name>",
              "filePath": "commands/arm/powerbiembedded/powerbiembedded.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "Name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of workspace collection"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            },
            {
              "name": "renew",
              "description": "Get access keys for a workspace collection",
              "fullName": "powerbi keys renew",
              "usage": "[options] <resourceGroup> <name>",
              "filePath": "commands/arm/powerbiembedded/powerbiembedded.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "Name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of workspace collection"
                },
                {
                  "flags": "--primary",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--primary",
                  "description": "Renew the Primary key"
                },
                {
                  "flags": "--secondary",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--secondary",
                  "description": "Renew the Secondary key"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "workspaces": {
          "name": "workspaces",
          "description": "Commands to manage your Power BI Workspaces",
          "fullName": "powerbi workspaces",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "Get workspaces within given workspace collection",
              "fullName": "powerbi workspaces list",
              "usage": "[options] <resourceGroup> <name>",
              "filePath": "commands/arm/powerbiembedded/powerbiembedded.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resourceGroup>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "Name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "Name of workspace collection"
                },
                {
                  "flags": "-s --subscription [subscription]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        }
      }
    },
    "provider": {
      "name": "provider",
      "description": "Commands to manage resource provider registrations",
      "fullName": "provider",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "list",
          "description": "List currently registered providers in ARM",
          "fullName": "provider list",
          "usage": "[options]",
          "filePath": "commands/arm/providers/provider.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-s --subscription <subscription>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "Subscription to list providers for"
            },
            {
              "flags": "--details",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--details",
              "description": "shows full list of resource type and locations."
            }
          ]
        },
        {
          "name": "show",
          "description": "Show details about the requested provider namespace",
          "fullName": "provider show",
          "usage": "[options] <namespace>",
          "filePath": "commands/arm/providers/provider.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "--details",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--details",
              "description": "show details such as alias definitions, etc."
            },
            {
              "flags": "-n --namespace <namespace>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--namespace",
              "description": "the provider namespace to show"
            },
            {
              "flags": "-s --subscription <subscription",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "subscription to show provider for"
            }
          ]
        },
        {
          "name": "register",
          "description": "Register namespace provider with the subscription",
          "fullName": "provider register",
          "usage": "[options] <namespace>",
          "filePath": "commands/arm/providers/provider.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-n --namespace <namespace>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--namespace",
              "description": "the provider namespace to register"
            },
            {
              "flags": "-s --subscription <subscription>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "Subscription to register"
            }
          ]
        },
        {
          "name": "unregister",
          "description": "Un-register namespace provider with the subscription",
          "fullName": "provider unregister",
          "usage": "[options] <namespace>",
          "filePath": "commands/arm/providers/provider.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-n --namespace <namespace>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--namespace",
              "description": "the provider namespace to register"
            },
            {
              "flags": "-s --subscription <subscription>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "Subscription to register"
            }
          ]
        }
      ],
      "categories": {
        "operations": {
          "name": "operations",
          "description": "Commands to get the operations or actions allowed by an Azure resource provider.",
          "fullName": "provider operations",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "show",
              "description": "Show operations for the requested provider operation search string. Operations can be composed to create custom roles in Azure RBAC. The command takes as input a operation search string (with wildcard (*) character(s)) which determines the action details to display.",
              "fullName": "provider operations show",
              "usage": "[options] <operationSearchString>\n\n     --------------------------  Get all actions for all providers  --------------------------\n     azure provider operations show --operationSearchString *\n\n     --------------------------  Get actions for a particular resource provider  --------------------------\n     azure provider operations show --operationSearchString Microsoft.Insights/*\n\n     --------------------------  Get all actions that can be performed on virtual machines  --------------------------\n     azure provider operations show --operationSearchString */virtualMachines/*",
              "filePath": "commands/arm/providers/provider.operations.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-o --operationSearchString <operationSearchString>",
                  "required": -28,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--operationSearchString",
                  "description": "The provider operation string (with wildcard (*) character). Example: \"*\" to get all actions for all providers, \"Microsoft.Insights/*\" to get actions for a particular provider, \"*/virtualMachines/*\" to get all actions that can be performed on virtual machines."
                },
                {
                  "flags": "-s --subscription <subscription>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "Subscription to show provider operations for"
                }
              ]
            }
          ],
          "categories": {}
        }
      }
    },
    "quotas": {
      "name": "quotas",
      "description": "Command to view your aggregated Azure quotas",
      "fullName": "quotas",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "show",
          "description": "Show cores, storage account and network quotas for the current subscription",
          "fullName": "quotas show",
          "usage": "[options] <location>",
          "filePath": "commands/arm/quotas/quotas.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-l, --location <location>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-l",
              "long": "--location",
              "description": "the location"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        }
      ],
      "categories": {}
    },
    "rediscache": {
      "name": "rediscache",
      "description": "Commands to manage your Azure Redis Cache(s)",
      "fullName": "rediscache",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "create",
          "description": "Create a Redis Cache",
          "fullName": "rediscache create",
          "usage": "[--name <name> --resource-group <resource-group> --location <location> [options]]",
          "filePath": "commands/arm/rediscache/rediscache.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "Name of the Redis Cache."
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "Name of the Resource Group"
            },
            {
              "flags": "-l, --location <location>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-l",
              "long": "--location",
              "description": "Location to create cache."
            },
            {
              "flags": "-z, --size <size>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-z",
              "long": "--size",
              "description": "Size of the Redis Cache. Valid values: [C0, C1, C2, C3, C4, C5, C6, P1, P2, P3, P4]"
            },
            {
              "flags": "-x, --sku <sku>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-x",
              "long": "--sku",
              "description": "Redis SKU. Should be one of : [Basic, Standard, Premium]"
            },
            {
              "flags": "-e, --enable-non-ssl-port",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-e",
              "long": "--enable-non-ssl-port",
              "description": "EnableNonSslPort property of the Redis Cache. Add this flag if you want to enable the Non SSL Port for your cache"
            },
            {
              "flags": "-c, --redis-configuration <redis-configuration>",
              "required": -27,
              "optional": 0,
              "bool": true,
              "short": "-c",
              "long": "--redis-configuration",
              "description": "Redis Configuration. Enter a JSON formatted string of configuration keys and values here. Format:\"{\"<key1>\":\"<value1>\",\"<key2>\":\"<value2>\"}\""
            },
            {
              "flags": "-f, --redis-configuration-file <redisConfigurationFile>",
              "required": -32,
              "optional": 0,
              "bool": true,
              "short": "-f",
              "long": "--redis-configuration-file",
              "description": "Redis Configuration. Enter the path of a file containing configuration keys and values here. Format for the file entry: {\"<key1>\":\"<value1>\",\"<key2>\":\"<value2>\"}",
              "fileRelatedOption": true
            },
            {
              "flags": "-r, --shard-count <shard-count>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-r",
              "long": "--shard-count",
              "description": "Number of Shards to create on a Premium Cluster Cache"
            },
            {
              "flags": "-v, --virtual-network <virtual-network>",
              "required": -23,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--virtual-network",
              "description": "The exact ARM resource ID of the virtual network to deploy the redis cache in. Example format: /subscriptions/{subid}/resourceGroups/{resourceGroupName}/Microsoft.ClassicNetwork/VirtualNetworks/vnet1"
            },
            {
              "flags": "-t, --subnet <subnet>",
              "required": -14,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--subnet",
              "description": "Required when deploying a redis cache inside an existing Azure Virtual Network"
            },
            {
              "flags": "-p, --static-ip <static-ip>",
              "required": -17,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--static-ip",
              "description": "Required when deploying a redis cache inside an existing Azure Virtual Network"
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "export",
          "description": "Exports data from Azure Redis Cache to a specified container",
          "fullName": "rediscache export",
          "usage": "[--name <name> --resource-group <resource-group> --prefix <prefix> --container <container> [options] ]",
          "filePath": "commands/arm/rediscache/rediscache.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "Name of the Redis Cache."
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "Name of the Resource Group under which the cache exists"
            },
            {
              "flags": "-p, --prefix <prefix>",
              "required": -14,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--prefix",
              "description": "Prefix to use for blob names"
            },
            {
              "flags": "-c, --container <container>",
              "required": -17,
              "optional": 0,
              "bool": true,
              "short": "-c",
              "long": "--container",
              "description": "SAS url of container where data should be exported"
            },
            {
              "flags": "-f, --format <format>",
              "required": -14,
              "optional": 0,
              "bool": true,
              "short": "-f",
              "long": "--format",
              "description": "Format for the blob.  Currently rdb is the only supported, with other formats expected in the future"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "import",
          "description": "Import data from blobs to Azure Redis Cache",
          "fullName": "rediscache import",
          "usage": "[--name <name> --resource-group <resource-group> --files <files> [options] ]",
          "filePath": "commands/arm/rediscache/rediscache.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "Name of the Redis Cache."
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "Name of the Resource Group under which the cache exists"
            },
            {
              "flags": "-d, --files <files>",
              "required": -13,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--files",
              "description": "SAS urls of blobs whose content should be imported into the cache."
            },
            {
              "flags": "-f, --format <format>",
              "required": -14,
              "optional": 0,
              "bool": true,
              "short": "-f",
              "long": "--format",
              "description": "Format for the blob.  Currently rdb is the only supported, with other formats expected in the future"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "reset",
          "description": "Reboot specified node(s) of an Azure Redis Cache instance",
          "fullName": "rediscache reset",
          "usage": "[--name <name> --resource-group <resource-group> --reboot-type <reboot-type> [options] ]",
          "filePath": "commands/arm/rediscache/rediscache.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "Name of the Redis Cache."
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "Name of the Resource Group under which the cache exists"
            },
            {
              "flags": "-r, --reboot-type <reboot-type>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-r",
              "long": "--reboot-type",
              "description": "Which node to reboot. Valid values: [PrimaryNode, SecondaryNode, AllNodes]"
            },
            {
              "flags": "-d, --shard-id <shard-id>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--shard-id",
              "description": "Which shard to reboot when rebooting a premium cache with clustering enabled"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "delete",
          "description": "Delete an existing Redis Cache",
          "fullName": "rediscache delete",
          "usage": "[--name <name> --resource-group <resource-group> ]",
          "filePath": "commands/arm/rediscache/rediscache.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "Name of the Redis Cache."
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "Name of the Resource Group under which the cache exists"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "list",
          "description": "List all Redis Caches within your Subscription or Resource Group",
          "fullName": "rediscache list",
          "usage": "[options]",
          "filePath": "commands/arm/rediscache/rediscache.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "Name of the Resource Group"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "show",
          "description": "Show properties of an existing Redis Cache",
          "fullName": "rediscache show",
          "usage": "[--name <name> --resource-group <resource-group>]",
          "filePath": "commands/arm/rediscache/rediscache.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "Name of the Redis Cache."
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "Name of the Resource Group"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "set",
          "description": "Change settings of an existing Redis Cache",
          "fullName": "rediscache set",
          "usage": "[--name <name> --resource-group <resource-group> --redis-configuration <redis-configuration>/--redis-configuration-file <redisConfigurationFile>]",
          "filePath": "commands/arm/rediscache/rediscache.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "Name of the Redis Cache."
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "Name of the Resource Group"
            },
            {
              "flags": "-c, --redis-configuration <redis-configuration>",
              "required": -27,
              "optional": 0,
              "bool": true,
              "short": "-c",
              "long": "--redis-configuration",
              "description": "Redis Configuration. Enter a JSON formatted string of configuration keys and values here."
            },
            {
              "flags": "-f, --redis-configuration-file <redisConfigurationFile>",
              "required": -32,
              "optional": 0,
              "bool": true,
              "short": "-f",
              "long": "--redis-configuration-file",
              "description": "Redis Configuration. Enter the path of a file containing configuration keys and values here.",
              "fileRelatedOption": true
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "renew-key",
          "description": "Renew the authentication key for an existing Redis Cache",
          "fullName": "rediscache renew-key",
          "usage": "[--name <name> --resource-group <resource-group> ]",
          "filePath": "commands/arm/rediscache/rediscache.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "Name of the Redis Cache."
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "Name of the Resource Group under which cache exists"
            },
            {
              "flags": "-t, --key-type <key-type>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--key-type",
              "description": "type of key to renew. Valid values are: 'Primary', 'Secondary'."
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "list-keys",
          "description": "Lists Primary and Secondary key of an existing Redis Cache",
          "fullName": "rediscache list-keys",
          "usage": "[--name <name> --resource-group <resource-group>]",
          "filePath": "commands/arm/rediscache/rediscache.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "Name of the Redis Cache."
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "Name of the Resource Group under which Cache exists"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "set-diagnostics",
          "description": "Sets diagnostics on an existing Redis Cache using the storage account specified",
          "fullName": "rediscache set-diagnostics",
          "usage": "[--name <name> --resource-group <resource-group> --storage-account-name <storage-account-name> --storage-account-resource-group <storage-account-resource-group>]",
          "filePath": "commands/arm/rediscache/rediscache.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "Name of the Redis Cache."
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "Name of the Resource Group under which Cache exists"
            },
            {
              "flags": "-x, --storage-account-name <storage-account-name>",
              "required": -28,
              "optional": 0,
              "bool": true,
              "short": "-x",
              "long": "--storage-account-name",
              "description": "Name of the Storage Account."
            },
            {
              "flags": "-b, --storage-account-resource-group <storage-account-resource-group>",
              "required": -38,
              "optional": 0,
              "bool": true,
              "short": "-b",
              "long": "--storage-account-resource-group",
              "description": "Name of the Resource Group under which the Storage Account exists"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "delete-diagnostics",
          "description": "Removes diagnostics on an existing Redis Cache",
          "fullName": "rediscache delete-diagnostics",
          "usage": "[--name <name> --resource-group <resource-group>]",
          "filePath": "commands/arm/rediscache/rediscache.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "Name of the Redis Cache."
            },
            {
              "flags": "-g, --resource-group <resource-group>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "Name of the Resource Group under which Cache exists"
            },
            {
              "flags": "-s, --subscription <subscription>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        }
      ],
      "categories": {}
    },
    "resource": {
      "name": "resource",
      "description": "Commands to manage your resources",
      "fullName": "resource",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "create",
          "description": "Creates a resource in a resource group",
          "fullName": "resource create",
          "usage": "[options] <resource-group> <name> <resource-type> <location> <api-version>",
          "filePath": "commands/arm/resource/resource.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group <resource-group>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the resource name"
            },
            {
              "flags": "-r --resource-type <resource-type>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-r",
              "long": "--resource-type",
              "description": "the resource type"
            },
            {
              "flags": "-o --api-version <api-version>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-o",
              "long": "--api-version",
              "description": "the API version of the resource provider"
            },
            {
              "flags": "--parent <parent>",
              "required": -10,
              "optional": 0,
              "bool": true,
              "long": "--parent",
              "description": "the name of the parent resource (if needed), in path/path/path format"
            },
            {
              "flags": "-p --properties <properties>",
              "required": -17,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--properties",
              "description": "a JSON-formatted string containing properties"
            },
            {
              "flags": "--sku <sku>",
              "required": -7,
              "optional": 0,
              "bool": true,
              "long": "--sku",
              "description": "a JSON-formatted string containing sku properties"
            },
            {
              "flags": "-l --location <location>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-l",
              "long": "--location",
              "description": "the location where we will create the resource"
            },
            {
              "flags": "--plan <plan>",
              "required": -8,
              "optional": 0,
              "bool": true,
              "long": "--plan",
              "description": "a JSON-formatted string containing plan properties"
            },
            {
              "flags": "--isFullObject",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--isFullObject",
              "description": "Indicates that the property object includes other options such as location, tags, sku, and/or plan."
            },
            {
              "flags": "-t --tags <tags>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--tags",
              "description": "Tags to set to the resource group. Can be mutliple. In the format of 'name=value'. Name is required and value is optional. For example, -t tag1=value1;tag2"
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "set",
          "description": "Updates a resource in a resource group without any templates or parameters",
          "fullName": "resource set",
          "usage": "[options] <resource-group> <name> <resource-type> <properties> <api-version>",
          "filePath": "commands/arm/resource/resource.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group <resource-group>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the resource name"
            },
            {
              "flags": "-r --resource-type <resource-type>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-r",
              "long": "--resource-type",
              "description": "the resource type"
            },
            {
              "flags": "-p --properties <properties>",
              "required": -17,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--properties",
              "description": "a JSON-formatted string containing properties"
            },
            {
              "flags": "-o --api-version <api-version>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-o",
              "long": "--api-version",
              "description": "the API version of the resource provider"
            },
            {
              "flags": "-i --resource-id <resource-id>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-i",
              "long": "--resource-id",
              "description": "the resource id"
            },
            {
              "flags": "--sku <sku>",
              "required": -7,
              "optional": 0,
              "bool": true,
              "long": "--sku",
              "description": "a JSON-formatted string containing sku properties"
            },
            {
              "flags": "--plan <plan>",
              "required": -8,
              "optional": 0,
              "bool": true,
              "long": "--plan",
              "description": "a JSON-formatted string containing plan properties"
            },
            {
              "flags": "--isFullObject",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--isFullObject",
              "description": "Indicates that the property object includes other options such as location, tags, sku, and/or plan."
            },
            {
              "flags": "--parent <parent>",
              "required": -10,
              "optional": 0,
              "bool": true,
              "long": "--parent",
              "description": "the name of the parent resource (if needed), in path/path/path format"
            },
            {
              "flags": "-t --tags <tags>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--tags",
              "description": "Tags to set to the resource. Can be multiple. In the format of 'name=value'. Name is required and value is optional. For example, -t tag1=value1;tag2"
            },
            {
              "flags": "--no-tags",
              "required": 0,
              "optional": 0,
              "bool": false,
              "long": "--no-tags",
              "description": "remove all existing tags"
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "list",
          "description": "Lists the resources",
          "fullName": "resource list",
          "usage": "[options] [resource-group]",
          "filePath": "commands/arm/resource/resource.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group <resource-group>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-r --resource-type <resource-type>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-r",
              "long": "--resource-type",
              "description": "the resource type"
            },
            {
              "flags": "--details",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--details",
              "description": "show details such as permissions, etc."
            },
            {
              "flags": "-t --tags <tags>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--tags",
              "description": "Tag to use to filter to the resource group. Can only take 1 tag. In the format of \"name=value\". Name is required and value is optional. For example, -t tag1 or -t tag1=value1."
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "show",
          "description": "Gets one resource within a resource group or subscription",
          "fullName": "resource show",
          "usage": "[options] <resource-group> <name> <resource-type> <api-version>",
          "filePath": "commands/arm/resource/resource.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group <resource-group>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the resource name"
            },
            {
              "flags": "-r --resource-type <resource-type>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-r",
              "long": "--resource-type",
              "description": "the resource type"
            },
            {
              "flags": "-i --resource-id <resource-id>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-i",
              "long": "--resource-id",
              "description": "the resource id"
            },
            {
              "flags": "-o --api-version <api-version>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-o",
              "long": "--api-version",
              "description": "the API version of the resource provider"
            },
            {
              "flags": "--parent <parent>",
              "required": -10,
              "optional": 0,
              "bool": true,
              "long": "--parent",
              "description": "the name of the parent resource (if needed), in path/path/path format"
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "delete",
          "description": "Deletes a resource in a resource group",
          "fullName": "resource delete",
          "usage": "[options] <resource-group> <name> <resource-type> <api-version>",
          "filePath": "commands/arm/resource/resource.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group <resource-group>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the resource group name"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the resource name"
            },
            {
              "flags": "-r --resource-type <resource-type>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-r",
              "long": "--resource-type",
              "description": "the resource type"
            },
            {
              "flags": "-i --resource-id <resource-id>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-i",
              "long": "--resource-id",
              "description": "the resource id"
            },
            {
              "flags": "-o --api-version <api-version>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-o",
              "long": "--api-version",
              "description": "the API version of the resource provider"
            },
            {
              "flags": "--parent <parent>",
              "required": -10,
              "optional": 0,
              "bool": true,
              "long": "--parent",
              "description": "the name of the parent resource (if needed), in path/path/path format"
            },
            {
              "flags": "-q, --quiet",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-q",
              "long": "--quiet",
              "description": "quiet mode (do not ask for delete confirmation)"
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "move",
          "description": "Moves resources from one resource group to another",
          "fullName": "resource move",
          "usage": "[options] <ids> <destination-group> <api-version>",
          "filePath": "commands/arm/resource/resource.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-i --ids <ids>",
              "required": -10,
              "optional": 0,
              "bool": true,
              "short": "-i",
              "long": "--ids",
              "description": "the comma-delimitied resource ids to be moved"
            },
            {
              "flags": "-d --destination-group <destination-group>",
              "required": -24,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--destination-group",
              "description": "the destination resource group name"
            },
            {
              "flags": "--destination-subscriptionId <destination-subscriptionId>",
              "required": -30,
              "optional": 0,
              "bool": true,
              "long": "--destination-subscriptionId",
              "description": "the destination subscription identifier"
            },
            {
              "flags": "-o --api-version <api-version>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-o",
              "long": "--api-version",
              "description": "the API version of the resource provider"
            },
            {
              "flags": "-q, --quiet",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-q",
              "long": "--quiet",
              "description": "quiet mode (do not ask for move confirmation)"
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        }
      ],
      "categories": {}
    },
    "role": {
      "name": "role",
      "description": "Commands to manage role definitions",
      "fullName": "role",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "list",
          "description": "Lists Azure RBAC roles available for assignment. Use this command to determine what actions on what resource types an Azure RBAC role allows.",
          "fullName": "role list",
          "usage": "[scope]\n\n           -----    Example 1   -------\n           azure role list\n           Lists all RBAC role definitions.\n",
          "filePath": "commands/arm/role/role.definition.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "--custom",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--custom",
              "description": "If specified, display only the custom role definitions instead of all role definitions."
            },
            {
              "flags": "--scope <scope>",
              "required": -9,
              "optional": 0,
              "bool": true,
              "long": "--scope",
              "description": "Role definition scope. For e.g. /subscriptions/4004a9fd-d58e-48dc-aeb2-4a4aec58606f"
            },
            {
              "flags": "--atScopeAndBelow",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--atScopeAndBelow",
              "description": "If specified, displays all role definitions."
            },
            {
              "flags": "-d --detailed",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--detailed",
              "description": "If specified, displays all the properties of a role definition"
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "Name or identifier of the subscription to list the roles for."
            }
          ]
        },
        {
          "name": "show",
          "description": "Search for a role definition with role name or id to view its details. To inspect individual operations that a role grants access to, review the Actions and NotActions properties of the role.",
          "fullName": "role show",
          "usage": "[name] [id] [scope]\n\n           -----    Example 1   -------\n           azure role show --name Reader\n           Get the Reader role definition.\n           -----    Example 2   -------\n           azure role show --id 52a6cc13-ff92-47a8-a39b-2a8205c3087e\n           Get the Reader role definition.\n",
          "filePath": "commands/arm/role/role.definition.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "Role definition name. For e.g. Reader, Contributor, Virtual Machine Contributor."
            },
            {
              "flags": "--id <id>",
              "required": -6,
              "optional": 0,
              "bool": true,
              "long": "--id",
              "description": "Role definition Id."
            },
            {
              "flags": "--scope <scope>",
              "required": -9,
              "optional": 0,
              "bool": true,
              "long": "--scope",
              "description": "Role definition scope. For e.g. /subscriptions/4004a9fd-d58e-48dc-aeb2-4a4aec58606f"
            },
            {
              "flags": "--atScopeAndBelow",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--atScopeAndBelow",
              "description": "If specified, displays all role definitions."
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "Name or identifier of the subscription to search the role definition in."
            }
          ]
        },
        {
          "name": "create",
          "description": "Creates a custom role in Azure RBAC. Provide either a JSON role definition file or a JSON-formatted string containing the role definition as input.\n     The input role definition MUST contain the following properties:\n     1) DisplayName: the name of the custom role\n     2) Description: a short description of the role that summarizes the access that the role grants.\n     3) Actions: the set of operations to which the custom role grants access. Use \"azure provider operations show\" with operationSearchString to get the operation for Azure resource providers that can be secured using Azure RBAC. Following are some valid operation strings\n       - \"*/read\" grants access to read operations of all Azure resource providers.\n       - \"Microsoft.Network/*/read\" grants access to read operations for all resource types in the Microsoft.Network resource provider of Azure.\n       - \"Microsoft.Compute/virtualMachines/*\" grants access to all operations of virtual machines and its child resource types.\n     4) AssignableScopes: the set of scopes (Azure subscriptions or resource groups) in which the custom role will be available for assignment. Using AssignableScopes you can make the custom role available for assignment in only the subscriptions or resource groups that need it, and not clutter the user experience for the rest of the subscriptions or resource groups. Following are some valid assignable scopes\n       - \"/subscriptions/c276fc76-9cd4-44c9-99a7-4fd71546436e\", \"/subscriptions/e91d47c4-76f3-4271-a796-21b4ecfe3624\": makes the role available for assignment in two subscriptions.\n       - \"/subscriptions/c276fc76-9cd4-44c9-99a7-4fd71546436e\": makes the role available for assignment in a single subscription.\n       - \"/subscriptions/c276fc76-9cd4-44c9-99a7-4fd71546436e/resourceGroups/Network\": makes the role available for assignment only in the Network resource group.\n\n     The input role definition MAY contain the following properties:\n     1) NotActions: the set of operations that must be excluded from the Actions to determine the effective actions for the custom role. If there is a specific operation that you do not wish to grant access to in a custom role, it is convenient to use NotActions to exclude it, rather than specifying all operations other than that specific operation in Actions.\n\n     NOTE: If a user is assigned a role that specifies an operation in NotActions and also assigned another role grants access to the same operation, the user will be able to perform that operation. NotActions is not a deny rule, it is simply a convenient way to create a set of allowed operations when specific operations need to be excluded.\n\n     Following is a sample json role definition that can be provided as input: \n     {\n     \"Name\": \"Contoso On-call\",\n     \"Description\": \"Can monitor compute, network and storage, and restart virtual machines\",\n     \"Actions\": [\n       \"Microsoft.Compute/*/read\",\n       \"Microsoft.Compute/virtualMachines/start/action\",\n       \"Microsoft.Compute/virtualMachines/restart/action\",\n       \"Microsoft.Compute/virtualMachines/downloadRemoteDesktopConnectionFile/action\",\n       \"Microsoft.Network/*/read\",\n       \"Microsoft.Storage/*/read\",\n       \"Microsoft.Authorization/*/read\",\n       \"Microsoft.Resources/subscriptions/resourceGroups/read\",\n       \"Microsoft.Resources/subscriptions/resourceGroups/resources/read\",\n       \"Microsoft.Insights/alertRules/*\",\n       \"Microsoft.Support/*\"\n     ],\n     \"AssignableScopes\": [\"/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\"/subscriptions/yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy\"]\n     }",
          "fullName": "role create",
          "usage": "[inputfile] [roledefinition]\n     --------------------------  Create using JSON file  --------------------------\n     azure role create --inputfile C:\\Temp\\roleDefinition.json",
          "filePath": "commands/arm/role/role.definition.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-f --inputfile <inputfile>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-f",
              "long": "--inputfile",
              "description": "File name containing a single role definition."
            },
            {
              "flags": "-r --roledefinition <roledefinition>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-r",
              "long": "--roledefinition",
              "description": "A JSON-formatted string containing the role definition."
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "set",
          "description": "Modifies a custom role in Azure RBAC. Provide the modified role definition either as a JSON file or as a JSON-formatted string containing the role definition.\n     The role definition for the updated custom role MUST contain the Id and all other required properties of the role even if they are not updated: Name, Description, Actions, AssignableScopes. NotActions is optional.\n\n     Following is a sample updated role definition json that can be provided as input:\n\n     {\n     \"Id\": \"52a6cc13-ff92-47a8-a39b-2a8205c3087e\",\n     \"Name\": \"Updated Role\",\n     \"Description\": \"Can monitor all resources and start and restart virtual machines\",\n     \"Actions\": [\n       \"*/read\",\n       \"Microsoft.ClassicCompute/virtualmachines/restart/action\",\n       \"Microsoft.ClassicCompute/virtualmachines/start/action\"\n     ],\n     \"AssignableScopes\": [\"/subscriptions/4004a9fd-d58e-48dc-aeb2-4a4aec58606f\"]\n     }",
          "fullName": "role set",
          "usage": "[inputfile] [roledefinition]\n     --------------------------  Create using JSON file  --------------------------\n     azure role set --inputfile C:\\Temp\\roleDefinition.json",
          "filePath": "commands/arm/role/role.definition.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-f --inputfile <inputfile>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-f",
              "long": "--inputfile",
              "description": "File name containing a single json role definition to be updated. Id, Name, Description, Actions and AssignableScopes are required."
            },
            {
              "flags": "-r --roledefinition <roledefinition>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-r",
              "long": "--roledefinition",
              "description": "A JSON-formatted string containing the role definition. For e.g. {\"Id\": \"52a6cc13-ff92-47a8-a39b-2a8205c3087e\",\"Description\": \"Updated role\",\"Actions\": [\"Microsoft.Support/*/read\"],\"Notactions\": [],\"AssignableScopes\": [\"/subscriptions/5004a9fd-d58e-48dc-aeb2-4a4aec58606f\"]}"
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        },
        {
          "name": "delete",
          "description": "Deletes a custom role in Azure RBAC. The role to be deleted is specified using the Id or Name property of the role. Delete will fail if there are existing role assignments made to the custom role.",
          "fullName": "role delete",
          "usage": "[id] [name] [scope]\n\n     --------------------------  Example 1  --------------------------\n     azure role delete --name \"Contoso On-call\"\n\n     --------------------------  Example 2  --------------------------\n     azure role delete --id \"52a6cc13-ff92-47a8-a39b-2a8205c3087e\"",
          "filePath": "commands/arm/role/role.definition.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "--id <id>",
              "required": -6,
              "optional": 0,
              "bool": true,
              "long": "--id",
              "description": "Id of the Role definition to be deleted"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "Name of the Role definition to be deleted."
            },
            {
              "flags": "--scope <scope>",
              "required": -9,
              "optional": 0,
              "bool": true,
              "long": "--scope",
              "description": "Role definition scope.  For e.g. /subscriptions/4004a9fd-d58e-48dc-aeb2-4a4aec58606f"
            },
            {
              "flags": "-q --quiet",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-q",
              "long": "--quiet",
              "description": "If set, does not prompt for a confirmation before deleting the custom role"
            },
            {
              "flags": "--passthru",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--passthru",
              "description": "If set, displays the properties of deleted custom role"
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "The subscription identifier"
            }
          ]
        }
      ],
      "categories": {
        "assignment": {
          "name": "assignment",
          "description": "Commands to manage role assignments",
          "fullName": "role assignment",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Assigns the specified RBAC role to the specified principal, at the specified scope.",
              "fullName": "role assignment create",
              "usage": "[objectId] [signInName] [spn] [roleName] [roleId] [scope] [resource-group] [resource-type] [resource-name]\n\n           -----    Example 1   -------\n           azure role assignment create --resource-group testRG --signInName john.doe@contoso.com\n           Grant access to a user at a resource group scope.\n\n           -----    Example 2   -------\n           azure ad group show --search \"Christine Koch Team\"\n           + Getting group list\n           data:    Display Name:      Christine Koch Team\n           data:    ObjectId:          2f9d4375-cbf1-48e8-83c9-2a0be4cb33fb\n           data:    Security Enabled:  true\n           data:    Mail Enabled:\n\n           azure role assignment create --objectId 2f9d4375-cbf1-48e8-83c9-2a0be4cb33fb --roleName Contributor --resource-group testRG\n           Grants access to a security group.\n\n           -----    Example 3   -------\n           azure role assignment create --signInName john.doe@contoso.com --roleName Owner --scope \"/subscriptions/96231a05-34ce-4eb4-aa6a-70759cbb5e83/resourcegroups/rg1/providers/Microsoft.Web/sites/site1\"\n           Grants access to a user at a resource 'site1' (website) scope.\n\n           -----    Example 4   -------\n           azure role assignment create --objectId 5ac84765-1c8c-4994-94b2-629461bd191b --roleName \"Virtual Machine Contributor\" --resouce-name Devices-Engineering-ProjectRND --resource-type Microsoft.Network/virtualNetworks/subnets --parent virtualNetworks/VNET-EASTUS-01 --resource-group Network\n           Grant access to a group at a nested resource (subnet)\n",
              "filePath": "commands/arm/role/role.assignment.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--objectId <objectId>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--objectId",
                  "description": "Azure AD Objectid of the user, group or service principal"
                },
                {
                  "flags": "--signInName <signInName>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--signInName",
                  "description": "The email address or the user principal name of the user."
                },
                {
                  "flags": "--spn <spn>",
                  "required": -7,
                  "optional": 0,
                  "bool": true,
                  "long": "--spn",
                  "description": "The ServicePrincipalName of the Azure AD application."
                },
                {
                  "flags": "-o --roleName <roleName>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--roleName",
                  "description": "The Name of the RBAC role that needs to be assigned to the principal i.e. Reader, Contributor, Virtual Network Administrator, etc."
                },
                {
                  "flags": "-d --roleId <roleId>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--roleId",
                  "description": "The Id of the RBAC role that needs to be assigned to the principal."
                },
                {
                  "flags": "-c --scope <scope>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--scope",
                  "description": "The Scope of the role assignment. In the format of relative URI. For e.g. \"/subscriptions/9004a9fd-d58e-48dc-aeb2-4a4aec58606f/resourceGroups/TestRG\". If not specified, will create the role assignment at subscription level. If specified, it should start with \"/subscriptions/{id}\"."
                },
                {
                  "flags": "-g --resource-group <resource-group>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group name. Creates an assignment that is effective at the specified resource group. When used in conjunction with resource-name, resource-type and (optionally)parent parameters, the command constructs a hierarchical scope in the form of a relative URI that identifies a resource."
                },
                {
                  "flags": "-r --resource-type <resource-type>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--resource-type",
                  "description": "The resource type. For e.g. Microsoft.Network/virtualNetworks. Should only be used in conjunction with resource-name, resource-group and (optionally)parent parameters to construct a hierarchical scope in the form of a relative URI that identifies a resource."
                },
                {
                  "flags": "-u --resource-name <resource-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--resource-name",
                  "description": "The resource name. For e.g. storageaccountprod. Should only be used in conjunction with resource-type, resource-group and (optionally)parent parameters to construct a hierarchical scope in the form of a relative URI that identifies a resource."
                },
                {
                  "flags": "--parent <parent>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--parent",
                  "description": "The parent resource in the hierarchy of the resource specified using resource-name parameter. Must be used in conjunction with resource-name, resource-type and resource-group parameters to construct a hierarchical scope in the form of a relative URI that identifies a resource."
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "Name or identifier of the subscription where the role assignment will be created."
                }
              ]
            },
            {
              "name": "list",
              "description": "Lists Azure RBAC role assignments at the specified scope. \n         By default it lists all role assignments in the selected Azure subscription. Use respective parameters to list assignments to a specific user, or to list assignments on a specific resource group or resource. \n         The Azure RBAC role that is assigned dictates what type of resources the user is allowed to manage in the scope, and what actions the user is allowed to perform on those resources. Use 'azure role list' or 'azure role show' commands to list actions that a given role allows. ",
              "fullName": "role assignment list",
              "usage": "[objectId] [signInName] [spn] [roleName] [roleId] [scope] [resource-group] [resource-type] [resource-name]\n\n           -----    Example 1   -------\n           azure role assignment list\n           List all role assignments in the subscription\n\n           -----    Example 2   -------\n           azure role assignment list --resource-group testRG --signInName john.doe@contoso.com -e\n           Gets all role assignments made to user john.doe@contoso.com  and the groups of which he is member  at the testRG scope or above.\n\n           -----    Example 3   -------\n           azure role assignment list --spn \"http://testapp1.com\"\n           Gets all role assignments of the specified service principal.\n\n           -----    Example 4   -------\n           azure role assignment list --scope \"/subscriptions/96231a05-34ce-4eb4-aa6a-70759cbb5e83/resourcegroups/rg1/providers/Microsoft.Web/sites/site1\"\n           Gets role assignments at the 'site1' website scope.\n",
              "filePath": "commands/arm/role/role.assignment.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--objectId <objectId>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--objectId",
                  "description": "The Azure AD ObjectId of the User, Group or Service Principal. Filters all assignments that are made to the specified principal."
                },
                {
                  "flags": "--signInName <signInName>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--signInName",
                  "description": "The email address or the user principal name of the user. Filters all assignments that are made to the specified user."
                },
                {
                  "flags": "--spn <spn>",
                  "required": -7,
                  "optional": 0,
                  "bool": true,
                  "long": "--spn",
                  "description": "The ServicePrincipalName of the service principal. Filters all assignments that are made to the specified Azure AD application."
                },
                {
                  "flags": "-o --roleName <roleName>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--roleName",
                  "description": "Name of the Role that is assigned to the principal i.e. Reader, Contributor, Virtual Network Administrator, etc."
                },
                {
                  "flags": "-d --roleId <roleId>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--roleId",
                  "description": "Id of the Role that is assigned to the principal"
                },
                {
                  "flags": "-c --scope <scope>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--scope",
                  "description": "The Scope of the role assignment. In the format of relative URI. For e.g. /subscriptions/9004a9fd-d58e-48dc-aeb2-4a4aec58606f/resourceGroups/TestRG. It must start with \"/subscriptions/{id}\". The command filters all assignments that are effective at that scope."
                },
                {
                  "flags": "-g --resource-group <resource-group>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group name. Lists role assignments that are effective at the specified resource group. When used in conjunction with resource-name, resource-type and (optionally)parent parameters, the command lists assignments effective at resources within the resource group."
                },
                {
                  "flags": "-r --resource-type <resource-type>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--resource-type",
                  "description": "The resource type. For e.g. Microsoft.Network/virtualNetworks. Must be used in conjunction with resource-name, resource-group and (optionally)parent parameters."
                },
                {
                  "flags": "-u --resource-name <resource-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--resource-name",
                  "description": "The resource name. For e.g. storageaccountprod. Must be used in conjunction with resource-group, resource-type and (optionally)parent parameters."
                },
                {
                  "flags": "--parent <parent>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--parent",
                  "description": "The parent resource in the hierarchy of the resource specified using --resource-name parameter. Must be used in conjunction with resource-name, resource-type and resource-group parameters."
                },
                {
                  "flags": "-e --expandPrincipalGroups",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--expandPrincipalGroups",
                  "description": "If specified, returns roles directly assigned to the user and to the groups of which the user is a member (transitively). Supported only for a user principal."
                },
                {
                  "flags": "-a --includeClassicAdministrators",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--includeClassicAdministrators",
                  "description": "If specified, also lists subscription classic administrators (co-admins, service admins, etc.) role assignments."
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "Name or identifier of the subscription to search the role assignments."
                }
              ]
            },
            {
              "name": "delete",
              "description": "Removes a role assignment to the specified principal who is assigned to a particular role at a particular scope. Use the 'azure role assignment list' command to retrieve assignments under the subscription",
              "fullName": "role assignment delete",
              "usage": "[objectId] [signInName] [spn] [roleName] [roleId] [scope] [resource-group] [resource-type] [resource-name]\n\n           -----    Example 1   -------\n           azure role assignment delete --resource-group testRG --signInName john.doe@contoso.com --roleName Reader\n           Removes a role assignment for john.doe@contoso.com who is assigned to the Reader role at the testRG resourcegroup scope\n\n           -----    Example 2   -------\n           azure role assignment delete --objectId 2f9d4375-cbf1-48e8-83c9-2a0be4cb33fb --roleName Reader\n           Removes the role assignment to the group principal identified by the ObjectId and assigned to the Reader role. Defaults to using the current subscription as the scope to find the assignment to be deleted.\n",
              "filePath": "commands/arm/role/role.assignment.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--objectId <objectId>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--objectId",
                  "description": "Azure AD Objectid of the user, group or service principal"
                },
                {
                  "flags": "--signInName <signInName>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--signInName",
                  "description": "The email address or the user principal name of the user."
                },
                {
                  "flags": "--spn <spn>",
                  "required": -7,
                  "optional": 0,
                  "bool": true,
                  "long": "--spn",
                  "description": "The ServicePrincipalName of the Azure AD application."
                },
                {
                  "flags": "-o --roleName <roleName>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--roleName",
                  "description": "The Name of the RBAC role for which the assignment needs to be deleted i.e. Reader, Contributor, Virtual Network   Administrator, etc."
                },
                {
                  "flags": "-d --roleId <roleId>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--roleId",
                  "description": "The Id of the RBAC role for which the assignment needs to be deleted."
                },
                {
                  "flags": "-c --scope <scope>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--scope",
                  "description": "The Scope of the role assignment to be deleted. In the format of relative URI. For e.g. \"/subscriptions/9004a9fd-d58e-48dc-aeb2-4a4aec58606f/resourceGroups/TestRG\". If not specified, will attempt to delete the role assignment at subscription level. If specified, it should start with \"/subscriptions/{id}\"."
                },
                {
                  "flags": "-g --resource-group <resource-group>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "The resource group name. Attempts to delete an assignment at the specified resource group scope. When used in conjunction with resource-name, resource-type and (optionally)parent parameters, the command constructs a hierarchical scope in the form of a relative URI that identifies a resource."
                },
                {
                  "flags": "-r --resource-type <resource-type>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--resource-type",
                  "description": "The resource type. For e.g. Microsoft.Network/virtualNetworks. Should only be used in conjunction with resource-name, resource-group and (optionally)parent parameters to construct a hierarchical scope in the form of a relative URI that identifies a resource."
                },
                {
                  "flags": "-u --resource-name <resource-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--resource-name",
                  "description": "The resource name. For e.g. storageaccountprod. Should only be used in conjunction with resource-type, resource-group and (optionally)parent parameters to construct a hierarchical scope in the form of a relative URI that identifies a resource."
                },
                {
                  "flags": "--parent <parent>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--parent",
                  "description": "The parent resource in the hierarchy of the resource specified using --resource-name parameter, if any. Must be used in conjunction with resource-name, resource-type and resource-group parameters to construct a hierarchical scope in the form of a relative URI that identifies a resource."
                },
                {
                  "flags": "-q --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "If specified, the command does not prompt for a confirmation before deleting the role assignment."
                },
                {
                  "flags": "--passthru",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--passthru",
                  "description": "If specified, displays the deleted role assignment"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "Name or identifier of the subscription to delete the role assignment"
                }
              ]
            }
          ],
          "categories": {
            "changelog": {
              "name": "changelog",
              "description": "Gets access change history for the selected subscription for the specified time range i.e. role assignments that were added or removed, including classic administrators (co-administrators and service administrators). Maximum duration that can be queried is 15 days (going back up to past 90 days).",
              "fullName": "role assignment changelog",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "List all access changes",
                  "fullName": "role assignment changelog list",
                  "usage": "[-b startTime] [-e endTime]\n\n           -----    Example 1   -------\n           azure role assignment changelog list\n           Gets the access change logs for the past hour.\n\n           -----    Example 2   -------\n           azure role assignment changelog list -b \"09/20/2015 15:00\" -e \"09/24/2015 15:00\"\n           Gets all access change logs between the specified dates.\n",
                  "filePath": "commands/arm/role/role.assignment.audit.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-b --startTime <startTime>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-b",
                      "long": "--startTime",
                      "description": "The start time of the query. E.g. \"2015-08-29 15:30\". If both startTime and endTime are not specified, defaults to the last one hour. Maximum query interval supported is 15 days."
                    },
                    {
                      "flags": "-e --endTime <endTime>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--endTime",
                      "description": "The end time of the query. E.g. \"2015-08-29 15:30\".If both startTime and endTime are not specified, defaults to the last one hour. Maximum query interval supported is 15 days."
                    },
                    {
                      "flags": "-s --subscription <subscription>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "Name or identifier of the subscription where the changelog is to be retrieved."
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        }
      }
    },
    "servermanagement": {
      "name": "servermanagement",
      "description": "Commands to manage Azure Server Managment resources",
      "fullName": "servermanagement",
      "usage": "[options]",
      "options": [],
      "commands": [],
      "categories": {
        "gateway": {
          "name": "gateway",
          "description": "Commands to manage Azure Server Management Tools Gateway instances",
          "fullName": "servermanagement gateway",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a server management gateway",
              "fullName": "servermanagement gateway create",
              "usage": "[options] <resource-group> <location> <name>",
              "filePath": "commands/arm/servermanagement/servermanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the server management gateway"
                },
                {
                  "flags": "-a --auto-upgrade",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--auto-upgrade",
                  "description": "set the gateway to automatically upgrade."
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                },
                {
                  "flags": "-t, --tags <tags>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                }
              ]
            },
            {
              "name": "list",
              "description": "List registered gateways",
              "fullName": "servermanagement gateway list",
              "usage": "[options] [resource-group]",
              "filePath": "commands/arm/servermanagement/servermanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show detailed gateway information",
              "fullName": "servermanagement gateway show",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/servermanagement/servermanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the server management gateway"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a gateway",
              "fullName": "servermanagement gateway delete",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/servermanagement/servermanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the server management gateway"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "node": {
          "name": "node",
          "description": "Commands to manage Azure Server Management Tools Node instances",
          "fullName": "servermanagement node",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a server management node",
              "fullName": "servermanagement node create",
              "usage": "[options] <resource-group> <location> <gateway-name> <name>",
              "filePath": "commands/arm/servermanagement/servermanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-w, --gateway-name <name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-w",
                  "long": "--gateway-name",
                  "description": "the name of the server management gateway"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the server management node"
                },
                {
                  "flags": "-u, --user-name <name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--user-name",
                  "description": "the account user name to use to connect to the node"
                },
                {
                  "flags": "-p, --password <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--password",
                  "description": "the account password to use to connect to the node"
                },
                {
                  "flags": "-c, --connection-name <name>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connection-name",
                  "description": "the connection name of the server management node (host name)"
                },
                {
                  "flags": "-t, --tags <tags>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--tags",
                  "description": "the list of tags.\n     Can be multiple. In the format of \"name=value\".\n     Name is required and value is optional.\n     For example, -t \"tag1=value1;tag2\""
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list",
              "description": "List registered nodes",
              "fullName": "servermanagement node list",
              "usage": "[options] [resource-group]",
              "filePath": "commands/arm/servermanagement/servermanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show node information",
              "fullName": "servermanagement node show",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/servermanagement/servermanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the server management node"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a node",
              "fullName": "servermanagement node delete",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/servermanagement/servermanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the server management node"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "session": {
          "name": "session",
          "description": "Commands to manage Azure Server Management Tools Sessions",
          "fullName": "servermanagement session",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a server management session",
              "fullName": "servermanagement session create",
              "usage": "[options] <resource-group> <node-name> <name>",
              "filePath": "commands/arm/servermanagement/servermanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --node-name <name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--node-name",
                  "description": "the name of the server management node"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the session on the node"
                },
                {
                  "flags": "-u, --user-name <name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--user-name",
                  "description": "the account user name to use to connect to the node"
                },
                {
                  "flags": "-p, --password <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--password",
                  "description": "the account password to use to connect to the node"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show detailed session information",
              "fullName": "servermanagement session show",
              "usage": "[options] <resource-group> <node-name> <name>",
              "filePath": "commands/arm/servermanagement/servermanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --node-name <name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--node-name",
                  "description": "the name of the server management node"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the session on the node"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a session",
              "fullName": "servermanagement session delete",
              "usage": "[options] <resource-group> <node-name> <name>",
              "filePath": "commands/arm/servermanagement/servermanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --node-name <name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--node-name",
                  "description": "the name of the server management node"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the session on the node"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "powershell": {
          "name": "powershell",
          "description": "Commands to invoke powershelll commands on a Azure Server Management Tools node",
          "fullName": "servermanagement powershell",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a powershell session",
              "fullName": "servermanagement powershell create",
              "usage": "[options] <resource-group> <node-name> <session-name>",
              "filePath": "commands/arm/servermanagement/servermanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --node-name <name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--node-name",
                  "description": "the name of the server management node"
                },
                {
                  "flags": "-e, --session-name <name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--session-name",
                  "description": "the name of the session on the node"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "invoke",
              "description": "Invoke a powershell script on a session",
              "fullName": "servermanagement powershell invoke",
              "usage": "[options] <resource-group> <node-name> <session-name> <powershell-sessionid>",
              "filePath": "commands/arm/servermanagement/servermanagement.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g, --resource-group <resource-group>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n, --node-name <name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--node-name",
                  "description": "the name of the server management node"
                },
                {
                  "flags": "-e, --session-name <name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--session-name",
                  "description": "the name of the session on the node"
                },
                {
                  "flags": "-p, --powershell-session-id <id>",
                  "required": -29,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--powershell-session-id",
                  "description": "the id of the powershell session on the node"
                },
                {
                  "flags": "-c, --command <command>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--command",
                  "description": "the powershell command or script to invoke"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        }
      }
    },
    "tag": {
      "name": "tag",
      "description": "Commands to manage your resource manager tags",
      "fullName": "tag",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "create",
          "description": "add a tag",
          "fullName": "tag create",
          "usage": "[options] <name> <value>",
          "filePath": "commands/arm/tag/tag.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "Name of the tag. If the tag name doesn't exist, create the tag name; Otherwise, add the value to the existing tag name."
            },
            {
              "flags": "--value <value>",
              "required": -9,
              "optional": 0,
              "bool": true,
              "long": "--value",
              "description": "Value of the tag. If specified, add the tag value to the tag name; Otherwise, keep the tag values unchanged."
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "The subscription identifier."
            }
          ]
        },
        {
          "name": "delete",
          "description": "Remove an entire tag or a tag value",
          "fullName": "tag delete",
          "usage": "[options] <name> <value>",
          "filePath": "commands/arm/tag/tag.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "Name of the tag to remove."
            },
            {
              "flags": "--value <value>",
              "required": -9,
              "optional": 0,
              "bool": true,
              "long": "--value",
              "description": "Value of the tag to remove. If not specified, remove the entire tag. If specified, only remove the tag value."
            },
            {
              "flags": "-q, --quiet",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-q",
              "long": "--quiet",
              "description": "If not specified, will prompt for confirmation. If specified, won't prompt."
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "The subscription identifier."
            }
          ]
        },
        {
          "name": "list",
          "description": "Lists the tag information",
          "fullName": "tag list",
          "usage": "[options]",
          "filePath": "commands/arm/tag/tag.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-d, --details",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--details",
              "description": "Show tag values information as well."
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "The subscription identifier."
            }
          ]
        },
        {
          "name": "show",
          "description": "Get a tag",
          "fullName": "tag show",
          "usage": "[options] [name]",
          "filePath": "commands/arm/tag/tag.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-n, --name <name>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "The tag name."
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "The subscription identifier."
            }
          ]
        }
      ],
      "categories": {}
    },
    "usage": {
      "name": "usage",
      "description": "Command to view your aggregated Azure usage data",
      "fullName": "usage",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "list",
          "description": "List the usage aggregates for a provided time range. When --json flag is used, it will get the information from all the pages and then provide the final json array.",
          "fullName": "usage list",
          "usage": "[options] [reportedStartTime] [reportedEndTime]",
          "filePath": "commands/arm/usage/usage.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "--reportedStartTime <datetime>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "long": "--reportedStartTime",
              "description": "The start of the time range to retrieve data for, in 'yyyy-mm-dd' format."
            },
            {
              "flags": "--reportedEndTime <datetime>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "long": "--reportedEndTime",
              "description": "The end of the time range to retrieve data for, in 'yyyy-mm-dd' format."
            },
            {
              "flags": "--granularity <daily/hourly>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "long": "--granularity",
              "description": "Value is either daily (default) or hourly to tell the API how to return the results grouped by day or hour."
            },
            {
              "flags": "--showDetails",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--showDetails",
              "description": "When this boolean flag is provided, the aggregates are broken down into the instance metadata which is more granular."
            },
            {
              "flags": "--continuationToken <url>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "long": "--continuationToken",
              "description": "Retrieved from previous calls, this is the bookmark used for progress when the responses are paged."
            },
            {
              "flags": "--subscription <subscription>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--subscription",
              "description": "the subscription identifier"
            },
            {
              "flags": "| more",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "",
              "long": "more",
              "description": "Provides paging support. Press 'Enter' for more information."
            }
          ]
        }
      ],
      "categories": {}
    },
    "webapp": {
      "name": "webapp",
      "description": "Commands to manage your Azure webapps",
      "fullName": "webapp",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "create",
          "description": "create a web app",
          "fullName": "webapp create",
          "usage": "[options] <resource-group> <name> <location> <plan>",
          "filePath": "commands/arm/webapp/webapp.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group <resource-group>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "Name of the resource group"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the name of the webapp to create"
            },
            {
              "flags": "--slot <slot>",
              "required": -8,
              "optional": 0,
              "bool": true,
              "long": "--slot",
              "description": "the name of the slot"
            },
            {
              "flags": "-l --location <location>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-l",
              "long": "--location",
              "description": "the geographic region to create the webapp, \n\t\t\t\t\t   locations found at https://azure.microsoft.com/en-us/status/"
            },
            {
              "flags": "-p --plan <plan>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--plan",
              "description": "the name of the app service plan eg: Default1."
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "stop",
          "description": "Stop a web app",
          "fullName": "webapp stop",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/webapp/webapp.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group <resource-group>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the name of the resource group"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the name of the webapp to stop"
            },
            {
              "flags": "--slot <slot>",
              "required": -8,
              "optional": 0,
              "bool": true,
              "long": "--slot",
              "description": "the name of the slot"
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            }
          ]
        },
        {
          "name": "start",
          "description": "Start a web app",
          "fullName": "webapp start",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/webapp/webapp.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group <resource-group>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the name of the resource group"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the name of the webapp to start"
            },
            {
              "flags": "--slot <slot>",
              "required": -8,
              "optional": 0,
              "bool": true,
              "long": "--slot",
              "description": "the name of the slot"
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            }
          ]
        },
        {
          "name": "restart",
          "description": "Stop and then start a web app",
          "fullName": "webapp restart",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/webapp/webapp.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group <resource-group>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the name of the resource group"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the name of the webapp to restart"
            },
            {
              "flags": "--slot <slot>",
              "required": -8,
              "optional": 0,
              "bool": true,
              "long": "--slot",
              "description": "the name of the slot"
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            }
          ]
        },
        {
          "name": "delete",
          "description": "Delete a webapp",
          "fullName": "webapp delete",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/webapp/webapp.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group <resource-group>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "Name of the resource group"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the name of the webapp to delete"
            },
            {
              "flags": "--slot <slot>",
              "required": -8,
              "optional": 0,
              "bool": true,
              "long": "--slot",
              "description": "the name of the slot to be deleted"
            },
            {
              "flags": "-q, --quiet",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-q",
              "long": "--quiet",
              "description": "quiet mode, do not ask for delete confirmation"
            },
            {
              "flags": "-s --subscription <subscription>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "list",
          "description": "List your webapps",
          "fullName": "webapp list",
          "usage": "[options] <resource-group>",
          "filePath": "commands/arm/webapp/webapp.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group <resource-group>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the name of the resource group"
            },
            {
              "flags": "-s --subscription <subscription>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        },
        {
          "name": "show",
          "description": "Get an available webapp",
          "fullName": "webapp show",
          "usage": "[options] <resource-group> <name>",
          "filePath": "commands/arm/webapp/webapp.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-g --resource-group <resource-group>",
              "required": -21,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--resource-group",
              "description": "the name of the resource group"
            },
            {
              "flags": "-n --name <name>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--name",
              "description": "the name of the webapp to show"
            },
            {
              "flags": "--slot <slot>",
              "required": -8,
              "optional": 0,
              "bool": true,
              "long": "--slot",
              "description": "the name of the slot to show"
            },
            {
              "flags": "-s --subscription <subscription>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription identifier"
            }
          ]
        }
      ],
      "categories": {
        "config": {
          "name": "config",
          "description": "Commands to manage your Azure webapps configurations",
          "fullName": "webapp config",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "show",
              "description": "Get webapp configuration \nexample:  webapp config show RGName WebAppName",
              "fullName": "webapp config show",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/webapp/webapp.config.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resource-group>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the webapp to show"
                },
                {
                  "flags": "--slot <slot>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--slot",
                  "description": "the name of the slot"
                },
                {
                  "flags": "-s --subscription <subscription>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "set",
              "description": "Set webapp configuration\nexample:  webapp config set RGName WebAppName --alwayson true --numberofworkers 1",
              "fullName": "webapp config set",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/webapp/webapp.config.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resource-group>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the webapp to update"
                },
                {
                  "flags": "-j --jsonInput <jsonInput>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-j",
                  "long": "--jsonInput",
                  "description": "the json config object string"
                },
                {
                  "flags": "--phpversion <phpversion>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--phpversion",
                  "description": "php version of webapp"
                },
                {
                  "flags": "--pythonversion <pythonversion>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--pythonversion",
                  "description": "python version of webapp"
                },
                {
                  "flags": "--nodeversion <nodeversion>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--nodeversion",
                  "description": "node version of webapp"
                },
                {
                  "flags": "--numberofworkers <numberofworkers>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "long": "--numberofworkers",
                  "description": "number of workers"
                },
                {
                  "flags": "--appcommandline <appcommandline>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--appcommandline",
                  "description": "app command line"
                },
                {
                  "flags": "--netframeworkversion <netframeworkversion>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "long": "--netframeworkversion",
                  "description": "net framwork version of webapp"
                },
                {
                  "flags": "--requesttracingenabled <requesttracingenabled>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "long": "--requesttracingenabled",
                  "description": "request tracing enabled option"
                },
                {
                  "flags": "--remotedebuggingenabled <remotedebuggingenabled>",
                  "required": -26,
                  "optional": 0,
                  "bool": true,
                  "long": "--remotedebuggingenabled",
                  "description": "remote debugging enabled option"
                },
                {
                  "flags": "--httploggingenabled <httploggingenabled>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "long": "--httploggingenabled",
                  "description": "http logging enabled option"
                },
                {
                  "flags": "--detailederrorloggingenabled <detailederrorloggingenabled>",
                  "required": -31,
                  "optional": 0,
                  "bool": true,
                  "long": "--detailederrorloggingenabled",
                  "description": "detailed error logging enabled option"
                },
                {
                  "flags": "--websocketenabled <websocketenabled>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "long": "--websocketenabled",
                  "description": "web socket enabled option"
                },
                {
                  "flags": "--use32bitworkerprocess <use32bitworkerprocess>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "long": "--use32bitworkerprocess",
                  "description": "use 32 bit process option"
                },
                {
                  "flags": "--alwayson <alwayson>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--alwayson",
                  "description": "always on option"
                },
                {
                  "flags": "--autohealenabled <autohealenabled>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "long": "--autohealenabled",
                  "description": "auto heal enabled option"
                },
                {
                  "flags": "--javaversion <javaversion>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--javaversion",
                  "description": "java version of webapp"
                },
                {
                  "flags": "--javacontainer <javacontainer>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--javacontainer",
                  "description": "java container of webapp"
                },
                {
                  "flags": "--javacontainerversion <javacontainerversion>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "long": "--javacontainerversion",
                  "description": "java container version of webapp"
                },
                {
                  "flags": "--scmtype <scmtype>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "long": "--scmtype",
                  "description": "scm type of webapp"
                },
                {
                  "flags": "--slot <slot>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--slot",
                  "description": "the name of the slot"
                },
                {
                  "flags": "-s --subscription <subscription>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {
            "appsettings": {
              "name": "appsettings",
              "description": "Commands to manage your Azure webapps app setting configurations",
              "fullName": "webapp config appsettings",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set webapp app settings (using comma seperated key value pairs)\nexample:  webapp config appsettings set RGName WebAppName KEY1=val1,KEY2=val2,KEY3=val3",
                  "fullName": "webapp config appsettings set",
                  "usage": "[options] <resource-group> <name> <appsettings>",
                  "filePath": "commands/arm/webapp/webapp.config.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n --name <name>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the webapp to show"
                    },
                    {
                      "flags": "-a --appsettings <appsettings>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--appsettings",
                      "description": "the appsettings of the webapp to add"
                    },
                    {
                      "flags": "--slot <slot>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--slot",
                      "description": "the name of the slot"
                    },
                    {
                      "flags": "-s --subscription <subscription>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete webapp app settings (using comma seperated keys)\nexample:  webapp config appsettings delete RGName WebAppName KEY1,KEY2,KEY3",
                  "fullName": "webapp config appsettings delete",
                  "usage": "[options] <resource-group> <name> <appsettings>",
                  "filePath": "commands/arm/webapp/webapp.config.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n --name <name>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the webapp to show"
                    },
                    {
                      "flags": "-a --appsettings <appsettings>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--appsettings",
                      "description": "the appsettings of the webapp to delete"
                    },
                    {
                      "flags": "--slot <slot>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--slot",
                      "description": "the name of the slot"
                    },
                    {
                      "flags": "-s --subscription <subscription>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "Get webapp app settings",
                  "fullName": "webapp config appsettings list",
                  "usage": "[options] <resource-group> <name>",
                  "filePath": "commands/arm/webapp/webapp.config.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n --name <name>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the webapp to list"
                    },
                    {
                      "flags": "--slot <slot>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--slot",
                      "description": "the name of the slot"
                    },
                    {
                      "flags": "-s --subscription <subscription>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "container": {
              "name": "container",
              "description": "Commands to manage your Azure webapps container configurations",
              "fullName": "webapp config container",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set webapp Container configurations (available only for linux webapps)",
                  "fullName": "webapp config container set",
                  "usage": "[options] <resource-group> <name>",
                  "filePath": "commands/arm/webapp/webapp.config.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n --name <name>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the webapp"
                    },
                    {
                      "flags": "-r --url <url>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--url",
                      "description": "the container registry server url"
                    },
                    {
                      "flags": "-u --username <username>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--username",
                      "description": "the container registry server username"
                    },
                    {
                      "flags": "-p --password <password>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--password",
                      "description": "the container registry server password"
                    },
                    {
                      "flags": "-c --custom-image-name <custom-image-name>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--custom-image-name",
                      "description": "the container custom image name and optionally the tag name"
                    },
                    {
                      "flags": "--slot <slot>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--slot",
                      "description": "the name of the slot"
                    },
                    {
                      "flags": "-s --subscription <subscription>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List Container configurations  (available only for linux webapps)",
                  "fullName": "webapp config container list",
                  "usage": "[options] <resource-group> <name>",
                  "filePath": "commands/arm/webapp/webapp.config.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n --name <name>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the webapp"
                    },
                    {
                      "flags": "--slot <slot>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--slot",
                      "description": "the name of the slot"
                    },
                    {
                      "flags": "-s --subscription <subscription>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete all webapp Container configurations (available only for linux webapps)",
                  "fullName": "webapp config container delete",
                  "usage": "[options] <resource-group> <name>",
                  "filePath": "commands/arm/webapp/webapp.config.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n --name <name>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the webapp"
                    },
                    {
                      "flags": "--slot <slot>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--slot",
                      "description": "the name of the slot"
                    },
                    {
                      "flags": "-s --subscription <subscription>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "hostnames": {
              "name": "hostnames",
              "description": "Commands to manage your Azure webapps hostnames",
              "fullName": "webapp config hostnames",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "add",
                  "description": "Add a hostname bindings for a webapp (using comma seperated names)\nexample:  webapp config hostnames add RGName WebAppName www.site1.com,www.site2.co.uk",
                  "fullName": "webapp config hostnames add",
                  "usage": "[options] <resource-group> <name> <hostnames>",
                  "filePath": "commands/arm/webapp/webapp.config.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n --name <name>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the web app"
                    },
                    {
                      "flags": "-o --hostnames <hostname>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--hostnames",
                      "description": "the list of hostnames to bind"
                    },
                    {
                      "flags": "-s --subscription <subscription>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a hostname binding for a webapp(using comma seperated names)\nexample:  webapp config hostnames delete RGName WebAppName www.site1.com,www.site2.co.uk",
                  "fullName": "webapp config hostnames delete",
                  "usage": "[options] <resource-group> <name> <hostnames>",
                  "filePath": "commands/arm/webapp/webapp.config.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n --name <name>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the web app"
                    },
                    {
                      "flags": "-o --hostnames <hostname>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--hostnames",
                      "description": "the list of hostnames to unbind"
                    },
                    {
                      "flags": "-s --subscription <subscription>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List hostname bindings under a webapp",
                  "fullName": "webapp config hostnames list",
                  "usage": "[options] <resource-group> <name>",
                  "filePath": "commands/arm/webapp/webapp.config.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "-g --resource-group <resource-group>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-g",
                      "long": "--resource-group",
                      "description": "the name of the resource group"
                    },
                    {
                      "flags": "-n --name <name>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the web app"
                    },
                    {
                      "flags": "--slot <slot>",
                      "required": -8,
                      "optional": 0,
                      "bool": true,
                      "long": "--slot",
                      "description": "the name of the slot"
                    },
                    {
                      "flags": "-s --subscription <subscription>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "publishingprofile": {
          "name": "publishingprofile",
          "description": "Command to get your Azure webapps publishing profile",
          "fullName": "webapp publishingprofile",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "show",
              "description": "Get webapp publish profile",
              "fullName": "webapp publishingprofile show",
              "usage": "[options] <resource-group> <name>",
              "filePath": "commands/arm/webapp/webapp.config.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-g --resource-group <resource-group>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group",
                  "description": "the name of the resource group"
                },
                {
                  "flags": "-n --name <name>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the name of the webapp to show"
                },
                {
                  "flags": "--slot <slot>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--slot",
                  "description": "the name of the slot"
                },
                {
                  "flags": "-s --subscription <subscription>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        }
      }
    }
  }
}