{
  "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"
            }
          ]
        },
        {
          "name": "import",
          "description": "Import a publishsettings file or certificate for your account",
          "fullName": "account import",
          "usage": "[options] <file>",
          "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": "--skipregister",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--skipregister",
              "description": "skip registering resources"
            }
          ]
        },
        {
          "name": "download",
          "description": "Launch a browser to download your publishsettings file",
          "fullName": "account download",
          "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": "-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, aka 'tenant'"
            }
          ]
        }
      ],
      "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": "--publishing-profile-url <publishingProfileUrl>",
                  "required": -26,
                  "optional": 0,
                  "bool": true,
                  "long": "--publishing-profile-url",
                  "description": "the publish settings file URL"
                },
                {
                  "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": "--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": "--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": "--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"
                }
              ]
            },
            {
              "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": "--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": "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": {}
        },
        "affinity-group": {
          "name": "affinity-group",
          "description": "Commands to manage your Affinity Groups",
          "fullName": "account affinity-group",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List affinity groups available for your account",
              "fullName": "account affinity-group list",
              "usage": "[options]",
              "filePath": "commands/asm/account.affinitygroup.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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"
                }
              ]
            },
            {
              "name": "create",
              "description": "Create an affinity group",
              "fullName": "account affinity-group create",
              "usage": "[options] <name>",
              "filePath": "commands/asm/account.affinitygroup.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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"
                },
                {
                  "flags": "-l, --location <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the data center location"
                },
                {
                  "flags": "-e, --label <label>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--label",
                  "description": "the affinity group label"
                },
                {
                  "flags": "-d, --description <description>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--description",
                  "description": "the affinity group description"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show details about an affinity group",
              "fullName": "account affinity-group show",
              "usage": "[options] <name>",
              "filePath": "commands/asm/account.affinitygroup.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete an affinity group",
              "fullName": "account affinity-group delete",
              "usage": "[options] <name>",
              "filePath": "commands/asm/account.affinitygroup.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "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"
                }
              ]
            }
          ],
          "categories": {}
        },
        "cert": {
          "name": "cert",
          "description": "Commands to manage your account certificates",
          "fullName": "account cert",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "export",
              "description": "Exports the publish settings file as a PEM file",
              "fullName": "account cert export",
              "usage": "[options]",
              "filePath": "commands/asm/account.cert.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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, --file <file>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--file",
                  "description": "the name of the cert file. If not specified, generate a file in pwd using the subscription ID as the file name"
                },
                {
                  "flags": "-p, --publishsettings <publishsettings>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--publishsettings",
                  "description": "the publish settings file"
                },
                {
                  "flags": "--subscription <subscription>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--subscription",
                  "description": "the Name or ID for the subscription whose cert you want to export. If not specified, use the current subscription"
                }
              ]
            }
          ],
          "categories": {}
        }
      }
    },
    "batch": {
      "name": "batch",
      "description": "Commands to manage your Batch objects",
      "fullName": "batch",
      "usage": "[options]",
      "options": [],
      "commands": [],
      "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.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 <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.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 <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.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": "-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.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": "--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.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 <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.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 <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.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 <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.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 <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": {}
            }
          }
        },
        "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 disaply 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 disaply 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": "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.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": "--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.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": "--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.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": "--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.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": "--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": {}
            }
          }
        },
        "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 speicfied 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 entites 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 entites 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 speicfied 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": "-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 speicfied 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 ob may be created under this job schedule; if you do not specify a time, the scheudle 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 entites 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 entites 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 speicfied 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 ob may be created under this job schedule; if you do not specify a time, the scheudle 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": {}
        },
        "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 entites 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 entites 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": {}
            }
          }
        },
        "subscription": {
          "name": "subscription",
          "description": "Commands to manage Batch options at the subscription level",
          "fullName": "batch subscription",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list-quotas",
              "description": "List the subscription level Batch quotas in the specified region",
              "fullName": "batch subscription list-quotas",
              "usage": "[options] <location>",
              "filePath": "commands/batch/batch.subscription.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": {}
        },
        "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 entites 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 entites 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"
                }
              ]
            }
          ],
          "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": {}
    },
    "storage": {
      "name": "storage",
      "description": "Commands to invoke service management operations.",
      "fullName": "storage",
      "usage": "[options]",
      "options": [],
      "commands": [],
      "categories": {
        "account": {
          "name": "account",
          "description": "Commands to manage your storage account.  ",
          "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": "-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": "-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": "--type <type>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--type",
                  "description": "the account type(LRS/ZRS/GRS/RAGRS/PLRS)"
                },
                {
                  "flags": "-e, --label <label>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--label",
                  "description": "the storage account label"
                },
                {
                  "flags": "-d, --description <description>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--description",
                  "description": "the storage account description"
                },
                {
                  "flags": "-a, --affinity-group <affinityGroup>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--affinity-group",
                  "description": "the affinity group"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "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": "--type <type>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--type",
                  "description": "the account type(LRS/GRS/RAGRS)"
                },
                {
                  "flags": "-e, --label <label>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--label",
                  "description": "the storage account label"
                },
                {
                  "flags": "-d, --description <description>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--description",
                  "description": "the storage account description"
                },
                {
                  "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": "-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"
                }
              ]
            },
            {
              "name": "abort-migration",
              "description": "Abort storage account migration api validates and aborts the given storage account for IaaS Classic to ARM migration.",
              "fullName": "storage account abort-migration",
              "usage": "[options] <name>",
              "filePath": "commands/asm/storage.generated/storageAccount.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            },
            {
              "name": "commit-migration",
              "description": "Commit storage account migration api validates and commits the given storage account for IaaS Classic to ARM migration.",
              "fullName": "storage account commit-migration",
              "usage": "[options] <name>",
              "filePath": "commands/asm/storage.generated/storageAccount.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            },
            {
              "name": "prepare-migration",
              "description": "Prepare storage account migration api validates and prepares the given storage account for IaaS Classic to ARM migration.",
              "fullName": "storage account prepare-migration",
              "usage": "[options] <name>",
              "filePath": "commands/asm/storage.generated/storageAccount.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            }
          ],
          "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": "-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": "-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": "-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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                },
                {
                  "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"
                },
                {
                  "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": "--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"
                },
                {
                  "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"
                },
                {
                  "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 <snapshotId>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--snapshot",
                  "description": "the snapshot ID"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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",
              "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"
                },
                {
                  "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": "--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"
                },
                {
                  "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"
                },
                {
                  "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": "--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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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 <snapshot>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--snapshot",
                      "description": "the snapshot id 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": "-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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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": "--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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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": "-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"
                },
                {
                  "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"
                },
                {
                  "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                },
                {
                  "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "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"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "run storage command in debug mode"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        }
      }
    },
    "service": {
      "name": "service",
      "description": "Commands to manage your Cloud Services",
      "fullName": "service",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "create",
          "description": "Create a cloud service",
          "fullName": "service create",
          "usage": "[options] <serviceName>",
          "filePath": "commands/asm/service.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "--serviceName <serviceName>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "long": "--serviceName",
              "description": "the cloud service name"
            },
            {
              "flags": "--description <description>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "long": "--description",
              "description": "the description. Defaults to 'Service host'"
            },
            {
              "flags": "--location <location>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "long": "--location",
              "description": "the location. Optional if affinitygroup is specified"
            },
            {
              "flags": "--affinitygroup <affinitygroup>",
              "required": -17,
              "optional": 0,
              "bool": true,
              "long": "--affinitygroup",
              "description": "the affinity group. Optional if location is specified"
            },
            {
              "flags": "--label <label>",
              "required": -9,
              "optional": 0,
              "bool": true,
              "long": "--label",
              "description": "the label. Defaults to serviceName"
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            }
          ]
        },
        {
          "name": "list",
          "description": "List Azure cloud services",
          "fullName": "service list",
          "usage": "[options]",
          "filePath": "commands/asm/service.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": 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"
            }
          ]
        },
        {
          "name": "show",
          "description": "Show Azure cloud service. Provides detailed information about deployments when used with --json option.",
          "fullName": "service show",
          "usage": "[options] <serviceName>",
          "filePath": "commands/asm/service.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "--serviceName <serviceName>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "long": "--serviceName",
              "description": "the cloud service name"
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            }
          ]
        },
        {
          "name": "delete",
          "description": "Delete a cloud service",
          "fullName": "service delete",
          "usage": "[options] <serviceName>",
          "filePath": "commands/asm/service.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "--serviceName <serviceName>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "long": "--serviceName",
              "description": "the cloud service 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": "get-deployment-event",
          "description": "Get details of deployment events.",
          "fullName": "service get-deployment-event",
          "usage": "[options] <serviceName> <startTime> <endTime>",
          "filePath": "commands/asm/service.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "--service-name <service-name>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "long": "--service-name",
              "description": "the cloud service name"
            },
            {
              "flags": "-d, --deployment-name <deployment-name>",
              "required": -23,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--deployment-name",
              "description": "the deployment name"
            },
            {
              "flags": "-t, --start-time <start-time>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--start-time",
              "description": "the start time specified in UTC e.g. 2015-06-17T17:58:50.4290652Z, 2015-06-17"
            },
            {
              "flags": "-e, --end-time <end-time>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-e",
              "long": "--end-time",
              "description": "the end time specified in UTC"
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            }
          ]
        }
      ],
      "categories": {
        "deployment": {
          "name": "deployment",
          "description": "Commands to manage your deployment.  ",
          "fullName": "service deployment",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "abort-migration",
              "description": "The Abort Deployment Operation validates and aborts your deployment for IaaS Classic to ARM migration.",
              "fullName": "service deployment abort-migration",
              "usage": "[options] <service-name> <name>",
              "filePath": "commands/asm/compute/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": "--service-name <service-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--service-name",
                  "description": "service-name"
                },
                {
                  "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": "commit-migration",
              "description": "The Commit Deployment Operation validates and commits your deployment for IaaS Classic to ARM migration.",
              "fullName": "service deployment commit-migration",
              "usage": "[options] <service-name> <name>",
              "filePath": "commands/asm/compute/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": "--service-name <service-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--service-name",
                  "description": "service-name"
                },
                {
                  "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": "prepare-migration",
              "description": "The Prepare Deployment Operation validates and prepares your deployment for IaaS Classic to ARM migration.",
              "fullName": "service deployment prepare-migration",
              "usage": "[options] <service-name> <name> <destination-virtual-network> <resource-group-name> <subnet-name> <virtual-network-name>",
              "filePath": "commands/asm/compute/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": "--service-name <service-name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--service-name",
                  "description": "service-name"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "name"
                },
                {
                  "flags": "--destination-virtual-network <destination-virtual-network>",
                  "required": -31,
                  "optional": 0,
                  "bool": true,
                  "long": "--destination-virtual-network",
                  "description": "destination-virtual-network"
                },
                {
                  "flags": "-g, --resource-group-name <resource-group-name>",
                  "required": -27,
                  "optional": 0,
                  "bool": true,
                  "short": "-g",
                  "long": "--resource-group-name",
                  "description": "resource-group-name"
                },
                {
                  "flags": "--subnet-name <subnet-name>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--subnet-name",
                  "description": "subnet-name"
                },
                {
                  "flags": "--virtual-network-name <virtual-network-name>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "long": "--virtual-network-name",
                  "description": "virtual-network-name"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            }
          ],
          "categories": {}
        },
        "cert": {
          "name": "cert",
          "description": "Commands to manage your Cloud Services certificates",
          "fullName": "service cert",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List Azure certificates",
              "fullName": "service cert list",
              "usage": "[options]",
              "filePath": "commands/asm/service.cert.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--serviceName <serviceName>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--serviceName",
                  "description": "the cloud service name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "get",
              "description": "Get Azure certificate",
              "fullName": "service cert get",
              "usage": "[options]",
              "filePath": "commands/asm/service.cert.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--service-name <serviceName>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--service-name",
                  "description": "the cloud service name"
                },
                {
                  "flags": "--thumbprint <thumbprint>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--thumbprint",
                  "description": "the thumbprint"
                },
                {
                  "flags": "--thumbprint-algorithm <thumbprint-algorithm>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "long": "--thumbprint-algorithm",
                  "description": "the thumbprint algorithm"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "create",
              "description": "Upload certificate",
              "fullName": "service cert create",
              "usage": "[options] <dns-name> <file> [password]",
              "filePath": "commands/asm/service.cert.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete certificate",
              "fullName": "service cert delete",
              "usage": "[options] <thumbprint>",
              "filePath": "commands/asm/service.cert.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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, --dns-name <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-name",
                  "description": "indicates to only look for certs for this DNS 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"
                }
              ]
            }
          ],
          "categories": {}
        },
        "internal-load-balancer": {
          "name": "internal-load-balancer",
          "description": "Commands to manage internal load balancers for your Cloud Service Deployment",
          "fullName": "service internal-load-balancer",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List internal load balancers for a cloud service deployment",
              "fullName": "service internal-load-balancer list",
              "usage": "[options] [serviceName]",
              "filePath": "commands/asm/service.internallb.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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, --serviceName <serviceName>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--serviceName",
                  "description": "the cloud service name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "add",
              "description": "Add an internal load balancer for a cloud service deployment",
              "fullName": "service internal-load-balancer add",
              "usage": "[options] [serviceName] [internalLBName]",
              "filePath": "commands/asm/service.internallb.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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, --serviceName <serviceName>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--serviceName",
                  "description": "the cloud service name"
                },
                {
                  "flags": "-n, --internalLBName <internalLBName>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--internalLBName",
                  "description": "the internal load balancer name"
                },
                {
                  "flags": "-t, --subnet-name <name>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--subnet-name",
                  "description": "the name of the subnet in the virtual network that the load balancer uses"
                },
                {
                  "flags": "-a, --static-virtualnetwork-ipaddress <ip-address>",
                  "required": -39,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--static-virtualnetwork-ipaddress",
                  "description": "specific virtual IP address that the load balancer uses from the subnet in the virtual network"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete an internal load balancer for a cloud service deployment",
              "fullName": "service internal-load-balancer delete",
              "usage": "[options] [serviceName] [internalLBName]",
              "filePath": "commands/asm/service.internallb.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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, --serviceName <serviceName>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--serviceName",
                  "description": "the cloud service name"
                },
                {
                  "flags": "-n, --internalLBName <internalLBName>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--internalLBName",
                  "description": "the internal load balancer 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": "set",
              "description": "Update internal load balancer of a cloud service deployment",
              "fullName": "service internal-load-balancer set",
              "usage": "[options] [serviceName] [internalLBName]",
              "filePath": "commands/asm/service.internallb.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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, --serviceName <serviceName>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--serviceName",
                  "description": "the cloud service name"
                },
                {
                  "flags": "-n, --internalLBName <internalLBName>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--internalLBName",
                  "description": "the internal load balancer name"
                },
                {
                  "flags": "-t, --subnet-name <name>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--subnet-name",
                  "description": "the name of the subnet in the virtual network that the load balancer uses"
                },
                {
                  "flags": "-a, --static-virtualnetwork-ipaddress <ip-address>",
                  "required": -39,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--static-virtualnetwork-ipaddress",
                  "description": "specific virtual IP address that the load balancer uses from the subnet in the virtual network"
                },
                {
                  "flags": "-d, --remove-subnet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--remove-subnet",
                  "description": "remove subnet entry if it is already defined for the internal load balancer"
                },
                {
                  "flags": "-e, --remove-vnetip",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--remove-vnetip",
                  "description": "remove virtual network IP address if it is already defined for the internal load balancer"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            }
          ],
          "categories": {}
        },
        "load-balanced-set": {
          "name": "load-balanced-set",
          "description": "Commands to manage load balanced set for a Cloud Service Deployment",
          "fullName": "service load-balanced-set",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "Get all load balanced set for a cloud service deployment",
              "fullName": "service load-balanced-set list",
              "usage": "[options] <serviceName>",
              "filePath": "commands/asm/service.lbset.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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 <service-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--service-name",
                  "description": "the cloud service name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "show",
              "description": "Get a load balanced set for a cloud service deployment",
              "fullName": "service load-balanced-set show",
              "usage": "[options] <serviceName>",
              "filePath": "commands/asm/service.lbset.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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 <service-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--service-name",
                  "description": "the cloud service name"
                },
                {
                  "flags": "-b, --load-balanced-set-name <load-balanced-set-name>",
                  "required": -30,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--load-balanced-set-name",
                  "description": "the load balanced set name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "set",
              "description": "Set load balanced set for a cloud service deployment",
              "fullName": "service load-balanced-set set",
              "usage": "[options] <serviceName> <load-balanced-set-name>",
              "filePath": "commands/asm/service.lbset.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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 <service-name>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--service-name",
                  "description": "the cloud service name"
                },
                {
                  "flags": "-b, --load-balanced-set-name <load-balanced-set-name>",
                  "required": -30,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--load-balanced-set-name",
                  "description": "the load balanced set name"
                },
                {
                  "flags": "-l, --public-port <public-port>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--public-port",
                  "description": "the load balanced endpoint public port"
                },
                {
                  "flags": "-k, --local-port <local-port>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--local-port",
                  "description": "the load balanced endpoint local port"
                },
                {
                  "flags": "-o, --protocol <protocol>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--protocol",
                  "description": "the transport layer protocol for the load balanced set endpoint (tcp or udp)"
                },
                {
                  "flags": "-m, --idle-timeout <idle-timeout>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--idle-timeout",
                  "description": "load balanced set endpoint connection timeout for tcp idle connection, specified in minutes"
                },
                {
                  "flags": "-t, --probe-port <probe-port>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--probe-port",
                  "description": "the virtual machine port to use to inspect the availability status"
                },
                {
                  "flags": "-r, --probe-protocol <probe-protocol>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--probe-protocol",
                  "description": "the protocol to use to inspect the availability status"
                },
                {
                  "flags": "-p, --probe-path <probe-path>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--probe-path",
                  "description": "the relative path to inspect the availability status"
                },
                {
                  "flags": "-e, --probe-interval <probe-interval>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--probe-interval",
                  "description": "the availability status check interval specified in seconds"
                },
                {
                  "flags": "-f, --probe-timeout <probe-timeout>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--probe-timeout",
                  "description": "the availability status check timeout specified in seconds"
                },
                {
                  "flags": "-u, --direct-server-return <direct-server-return>",
                  "required": -28,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--direct-server-return",
                  "description": "enable or disable direct server return on the load balanced set endpoint, valid values are [Enabled, Disabled] Disabled by default"
                },
                {
                  "flags": "-i, --internal-load-balancer-name <internal-load-balancer-name>",
                  "required": -35,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--internal-load-balancer-name",
                  "description": "the internal load balancer name"
                },
                {
                  "flags": "-a, --load-balancer-distribution <load-balancer-distribution>",
                  "required": -34,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--load-balancer-distribution",
                  "description": "the load balancer distribution, valid values are [sourceIP, sourceIPProtocol, None]"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            }
          ],
          "categories": {}
        }
      }
    },
    "hdinsight": {
      "name": "hdinsight",
      "description": "HDInsight commands in ASM mode are deprecated and will be removed in January 2017. Please use ARM mode instead by entering:  azure config mode arm\nTo submit jobs, please use a Secure Shell (SSH) connection to your cluster.\nFor more information, go to http://go.microsoft.com/fwlink/?LinkID=746541&clcid=0x404 \nCommands to manage HDInsight clusters and jobs",
      "fullName": "hdinsight",
      "usage": "[options]",
      "options": [],
      "commands": [],
      "categories": {
        "cluster": {
          "name": "cluster",
          "description": "HDInsight commands in ASM mode are deprecated and will be removed in January 2017. Please use ARM mode instead by entering:  azure config mode arm\nTo submit jobs, please use a Secure Shell (SSH) connection to your cluster.\nFor more information, go to http://go.microsoft.com/fwlink/?LinkID=746541&clcid=0x404 \nCommands to manage HDInsight clusters",
          "fullName": "hdinsight cluster",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "HDInsight commands in ASM mode are deprecated and will be removed in January 2017. Please use ARM mode instead by entering:  azure config mode arm\nTo submit jobs, please use a Secure Shell (SSH) connection to your cluster.\nFor more information, go to http://go.microsoft.com/fwlink/?LinkID=746541&clcid=0x404 \nCreate a cluster",
              "fullName": "hdinsight cluster create",
              "usage": "[options] <clusterName> <osType> <storageAccountName> <storageAccountKey> <storageContainer> <dataNodeCount> <headNodeSize> <dataNodeSize> <location> <userName> <password> <sshUserName> <sshPassword>",
              "filePath": "commands/asm/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": "--clusterName <clusterName>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--clusterName",
                  "description": "HDInsight cluster name"
                },
                {
                  "flags": "--osType <osType>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--osType",
                  "description": "HDInsight cluster operating system - 'windows' or 'linux'"
                },
                {
                  "flags": "--storageAccountName <storageAccountName>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "long": "--storageAccountName",
                  "description": "Storage account url to use for default HDInsight storage"
                },
                {
                  "flags": "--storageAccountKey <storageAccountKey>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "long": "--storageAccountKey",
                  "description": "Key to the storage account to use for default HDInsight storage"
                },
                {
                  "flags": "--storageContainer <storageContainer>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "long": "--storageContainer",
                  "description": "Container in the storage account to use for HDInsight default storage"
                },
                {
                  "flags": "--dataNodeCount <dataNodeCount>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--dataNodeCount",
                  "description": "Number of data nodes to use for the cluster"
                },
                {
                  "flags": "--headNodeSize <headNodeSize>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--headNodeSize",
                  "description": "NOTE: Head node size for the cluster (only allowed for 'windows' ostype)"
                },
                {
                  "flags": "--dataNodeSize <dataNodeSize>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--dataNodeSize",
                  "description": "NOTE: Data node size for the cluster (only allowed for 'windows' ostype)"
                },
                {
                  "flags": "--location <location>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--location",
                  "description": "Data center location 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"
                },
                {
                  "flags": "--sshPassword <sshPassword>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--sshPassword",
                  "description": "SSH password"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "delete",
              "description": "HDInsight commands in ASM mode are deprecated and will be removed in January 2017. Please use ARM mode instead by entering:  azure config mode arm\nTo submit jobs, please use a Secure Shell (SSH) connection to your cluster.\nFor more information, go to http://go.microsoft.com/fwlink/?LinkID=746541&clcid=0x404 \nDelete a cluster",
              "fullName": "hdinsight cluster delete",
              "usage": "[options] <clusterName> <location> <osType>",
              "filePath": "commands/asm/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": "--clusterName <clusterName>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--clusterName",
                  "description": "Cluster name"
                },
                {
                  "flags": "--location <location>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--location",
                  "description": "Cluster location"
                },
                {
                  "flags": "--osType <osType>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--osType",
                  "description": "Cluster OS type"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "show",
              "description": "HDInsight commands in ASM mode are deprecated and will be removed in January 2017. Please use ARM mode instead by entering:  azure config mode arm\nTo submit jobs, please use a Secure Shell (SSH) connection to your cluster.\nFor more information, go to http://go.microsoft.com/fwlink/?LinkID=746541&clcid=0x404 \nShow cluster details",
              "fullName": "hdinsight cluster show",
              "usage": "[options] <clusterName> <osType>",
              "filePath": "commands/asm/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": "--clusterName <clusterName>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--clusterName",
                  "description": "the HdInsight cluster name"
                },
                {
                  "flags": "--osType <osType>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--osType",
                  "description": "the HdInsight cluster operating system: windows OR linux"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "list",
              "description": "HDInsight commands in ASM mode are deprecated and will be removed in January 2017. Please use ARM mode instead by entering:  azure config mode arm\nTo submit jobs, please use a Secure Shell (SSH) connection to your cluster.\nFor more information, go to http://go.microsoft.com/fwlink/?LinkID=746541&clcid=0x404 \nList the clusters",
              "fullName": "hdinsight cluster list",
              "usage": "[options]",
              "filePath": "commands/asm/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"
                }
              ]
            }
          ],
          "categories": {}
        },
        "job": {
          "name": "job",
          "description": "HDInsight commands in ASM mode are deprecated and will be removed in January 2017. Please use ARM mode instead by entering:  azure config mode arm\nTo submit jobs, please use a Secure Shell (SSH) connection to your cluster.\nFor more information, go to http://go.microsoft.com/fwlink/?LinkID=746541&clcid=0x404 \nCommands to manage HDInsight jobs",
          "fullName": "hdinsight job",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "hive_create",
              "description": "HDInsight commands in ASM mode are deprecated and will be removed in January 2017. Please use ARM mode instead by entering:  azure config mode arm\nTo submit jobs, please use a Secure Shell (SSH) connection to your cluster.\nFor more information, go to http://go.microsoft.com/fwlink/?LinkID=746541&clcid=0x404 \nSubmits a Hive job to an HdInsight cluster",
              "fullName": "hdinsight job hive_create",
              "usage": "[options] <clusterDnsName> <userName> <password>",
              "filePath": "commands/asm/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": "--clusterDnsName <clusterDnsName>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--clusterDnsName",
                  "description": "Fully qualified cluster DNS name. Example: mycluster.azurehdinsight.net"
                },
                {
                  "flags": "--userName <userName>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--userName",
                  "description": "User name for the cluster"
                },
                {
                  "flags": "--password <password>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--password",
                  "description": "Password for the cluster"
                },
                {
                  "flags": "--query <query>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--query",
                  "description": "The Hive query string to be executed"
                },
                {
                  "flags": "--queryFile <queryFile>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--queryFile",
                  "description": "The path to a file that contains the Hive query to be executed; this parameter and the [query] parameter are mutually exclusive"
                },
                {
                  "flags": "--arguments <arguments>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--arguments",
                  "description": "A comma separated string of arguments to be passed to the Hive job. For example: \"a1,a2,a3\""
                },
                {
                  "flags": "--defines <defines>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "long": "--defines",
                  "description": "A key/value pair of Hadoop configuration values to be set during the Hive job execution. For example: \"k1=v1,k2=v2\""
                },
                {
                  "flags": "--files <files>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--files",
                  "description": "A comma separated string of file paths required for the Hive job to execute. For example: \"f1/f2/f3,f4/f5,f6\""
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "mr_create",
              "description": "HDInsight commands in ASM mode are deprecated and will be removed in January 2017. Please use ARM mode instead by entering:  azure config mode arm\nTo submit jobs, please use a Secure Shell (SSH) connection to your cluster.\nFor more information, go to http://go.microsoft.com/fwlink/?LinkID=746541&clcid=0x404 \nSubmits a MapReduce job to an HdInsight cluster",
              "fullName": "hdinsight job mr_create",
              "usage": "[options] <clusterDnsName> <userName> <password> <className> <jarFile>",
              "filePath": "commands/asm/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": "--clusterDnsName <clusterDnsName>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--clusterDnsName",
                  "description": "Fully qualified cluster DNS name. Example: mycluster.azurehdinsight.net"
                },
                {
                  "flags": "--userName <userName>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--userName",
                  "description": "User name for the cluster"
                },
                {
                  "flags": "--password <password>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--password",
                  "description": "Password for the cluster"
                },
                {
                  "flags": "--className <className>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--className",
                  "description": "Name of the job class in the job JAR file"
                },
                {
                  "flags": "--jarFile <jarFile>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "long": "--jarFile",
                  "description": "The fully qualified name of the JAR file that contains the code and dependencies of the MapReduce job"
                },
                {
                  "flags": "--arguments <arguments>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--arguments",
                  "description": "A comma separated string of arguments to be passed to the MapReduce job. For example: \"a1,a2,a3\""
                },
                {
                  "flags": "--defines <defines>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "long": "--defines",
                  "description": "A key/value pair of Hadoop configuration values to be set during the MapReduce job execution. For example: \"k1=v1,k2=v2\""
                },
                {
                  "flags": "--files <files>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--files",
                  "description": "A comma separated string of file paths required for the MapReduce job to execute. For example: \"f1/f2/f3,f4/f5,f6\""
                },
                {
                  "flags": "--libJars <libJars>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "long": "--libJars",
                  "description": "The Jar library references for the MapReduce job"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "mr_streaming_create",
              "description": "HDInsight commands in ASM mode are deprecated and will be removed in January 2017. Please use ARM mode instead by entering:  azure config mode arm\nTo submit jobs, please use a Secure Shell (SSH) connection to your cluster.\nFor more information, go to http://go.microsoft.com/fwlink/?LinkID=746541&clcid=0x404 \nSubmits a Streaming MapReduce job to an HdInsight cluster",
              "fullName": "hdinsight job mr_streaming_create",
              "usage": "[options] <clusterDnsName> <userName> <password> <mapper> <reducer>",
              "filePath": "commands/asm/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": "--clusterDnsName <clusterDnsName>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--clusterDnsName",
                  "description": "Fully qualified cluster DNS name. Example: mycluster.azurehdinsight.net"
                },
                {
                  "flags": "--userName <userName>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--userName",
                  "description": "User name for the cluster"
                },
                {
                  "flags": "--password <password>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--password",
                  "description": "Password for the cluster"
                },
                {
                  "flags": "--arguments <arguments>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--arguments",
                  "description": "A comma separated string of arguments to be passed to the Streaming MapReduce job. For example: \"a1,a2,a3\""
                },
                {
                  "flags": "--cmdenv <cmdEnv>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--cmdenv",
                  "description": "Comma separated key/value pairs of environment variables that should be set during the Streaming MapReduce job execution on data nodes"
                },
                {
                  "flags": "--mapper <combiner>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "long": "--mapper",
                  "description": "Mapper executable name for the Streaming MapReduce job"
                },
                {
                  "flags": "--reducer <reducer>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "long": "--reducer",
                  "description": "Reducer executable name for the Streaming MapReduce job"
                },
                {
                  "flags": "--combiner <combiner>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--combiner",
                  "description": "Combiner executable name for the Streaming MapReduce job"
                },
                {
                  "flags": "--defines <defines>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "long": "--defines",
                  "description": "A comma separated key/value pair of Hadoop configuration values to be set during the Streaming MapReduce job execution. For example: \"k1=v1,k2=v2\""
                },
                {
                  "flags": "--files <files>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--files",
                  "description": "A comma separated string of file paths required for the Streaming MapReduce job to execute. For example: \"f1/f2/f3,f4/f5,f6\""
                },
                {
                  "flags": "--inputPath <inputPath>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--inputPath",
                  "description": "Location of the input files for the Streaming MapReduce job"
                },
                {
                  "flags": "--outputPath <outputPath>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--outputPath",
                  "description": "Location of the output files for the Streaming MapReduce job"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "show",
              "description": "HDInsight commands in ASM mode are deprecated and will be removed in January 2017. Please use ARM mode instead by entering:  azure config mode arm\nTo submit jobs, please use a Secure Shell (SSH) connection to your cluster.\nFor more information, go to http://go.microsoft.com/fwlink/?LinkID=746541&clcid=0x404 \nRetrieves the details of the specified job from an HDInsight cluster",
              "fullName": "hdinsight job show",
              "usage": "[options] <clusterDnsName> <userName> <password> <jobId>",
              "filePath": "commands/asm/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": "--clusterDnsName <clusterDnsName>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--clusterDnsName",
                  "description": "Fully qualified cluster DNS name. Example: mycluster.azurehdinsight.net"
                },
                {
                  "flags": "--userName <userName>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--userName",
                  "description": "User name for the cluster"
                },
                {
                  "flags": "--password <password>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--password",
                  "description": "Password for the cluster"
                },
                {
                  "flags": "--jobId <jobId>",
                  "required": -9,
                  "optional": 0,
                  "bool": true,
                  "long": "--jobId",
                  "description": "The Id of the job for which the details need to be retrieved"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "list",
              "description": "HDInsight commands in ASM mode are deprecated and will be removed in January 2017. Please use ARM mode instead by entering:  azure config mode arm\nTo submit jobs, please use a Secure Shell (SSH) connection to your cluster.\nFor more information, go to http://go.microsoft.com/fwlink/?LinkID=746541&clcid=0x404 \nRetrieves the list of jobs from the specified HDInsight cluster",
              "fullName": "hdinsight job list",
              "usage": "[options] <clusterDnsName> <userName> <password>",
              "filePath": "commands/asm/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": "--clusterDnsName <clusterDnsName>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--clusterDnsName",
                  "description": "Fully qualified cluster DNS name. Example: mycluster.azurehdinsight.net"
                },
                {
                  "flags": "--userName <userName>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--userName",
                  "description": "User name for the cluster"
                },
                {
                  "flags": "--password <password>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--password",
                  "description": "Password for the cluster"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            }
          ],
          "categories": {}
        }
      }
    },
    "mobile": {
      "name": "mobile",
      "description": "Commands to manage your Mobile Services",
      "fullName": "mobile",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "locations",
          "description": "List available mobile service locations",
          "fullName": "mobile locations",
          "usage": "[options]",
          "filePath": "commands/asm/mobile.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": 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"
            }
          ]
        },
        {
          "name": "create",
          "description": "Create a new mobile service",
          "fullName": "mobile create",
          "usage": "[options] [servicename] [sqlAdminUsername] [sqlAdminPassword]",
          "filePath": "commands/asm/mobile.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": 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, --sqlServer <sqlServer>",
              "required": -17,
              "optional": 0,
              "bool": true,
              "short": "-r",
              "long": "--sqlServer",
              "description": "use existing SQL server"
            },
            {
              "flags": "-d, --sqlDb <sqlDb>",
              "required": -13,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--sqlDb",
              "description": "use existing SQL database"
            },
            {
              "flags": "-l, --location <location>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-l",
              "long": "--location",
              "description": "create the service in a particular location; run azure mobile locations to get available locations"
            },
            {
              "flags": "--sqlLocation <location>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "long": "--sqlLocation",
              "description": "create the SQL server in a particular location; defaults to mobile service location"
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            },
            {
              "flags": "-b, --backend <backend>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-b",
              "long": "--backend",
              "description": "backend of mobile service. \"node\" and \"dotnet\" are examples."
            },
            {
              "flags": "-p, --push <push>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--push",
              "description": "type of push; \"nh\" or \"legacy\" are allowed. \"nh\" will soon be the default for node service. ignored for dotnet services."
            }
          ]
        },
        {
          "name": "delete",
          "description": "Delete a mobile service",
          "fullName": "mobile delete",
          "usage": "[options] [servicename] [username] [password]",
          "filePath": "commands/asm/mobile.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": 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, --deleteData",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--deleteData",
              "description": "delete all data from the database"
            },
            {
              "flags": "-a, --deleteAll",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-a",
              "long": "--deleteAll",
              "description": "delete all data, SQL database, and SQL server"
            },
            {
              "flags": "-n, --deleteNotificationHubNamespace",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--deleteNotificationHubNamespace",
              "description": "delete associated Notification Hub namespace and entities"
            },
            {
              "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": "do not prompt for confirmation"
            }
          ]
        },
        {
          "name": "list",
          "description": "List your mobile services",
          "fullName": "mobile list",
          "usage": "[options]",
          "filePath": "commands/asm/mobile.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": 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"
            }
          ]
        },
        {
          "name": "show",
          "description": "Show details for a mobile service",
          "fullName": "mobile show",
          "usage": "[servicename] [options]",
          "filePath": "commands/asm/mobile.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": 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"
            }
          ]
        },
        {
          "name": "restart",
          "description": "Restart a mobile service",
          "fullName": "mobile restart",
          "usage": "[options] [servicename]",
          "filePath": "commands/asm/mobile.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": 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"
            }
          ]
        },
        {
          "name": "redeploy",
          "description": "Redeploy a mobile service with most recent runtime version",
          "fullName": "mobile redeploy",
          "usage": "[options] [servicename]",
          "filePath": "commands/asm/mobile.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": 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"
            }
          ]
        },
        {
          "name": "log",
          "description": "Get mobile service logs",
          "fullName": "mobile log",
          "usage": "[options] [servicename]",
          "filePath": "commands/asm/mobile.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": 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, --query <query>",
              "required": -13,
              "optional": 0,
              "bool": true,
              "short": "-r",
              "long": "--query",
              "description": "log query; takes precedence over --type, --source, --continuationToken, and --top"
            },
            {
              "flags": "-t, --type <type>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--type",
              "description": "filter entry by type"
            },
            {
              "flags": "--source <source>",
              "required": -10,
              "optional": 0,
              "bool": true,
              "long": "--source",
              "description": "filter entry by source"
            },
            {
              "flags": "-c, --continuationToken <token>",
              "required": -25,
              "optional": 0,
              "bool": true,
              "short": "-c",
              "long": "--continuationToken",
              "description": "show logs starting from the specified continuation token"
            },
            {
              "flags": "-p, --top <top>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--top",
              "description": "return the first <top> number of remaining rows"
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            }
          ]
        },
        {
          "name": "recover",
          "description": "Recovers an unhealthy mobile service using the capacity reserved by a healthy mobile service in a different region.",
          "fullName": "mobile recover",
          "usage": "[options] [unhealthyservicename] [healthyservicename]",
          "filePath": "commands/asm/mobile.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-q, --quiet",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-q",
              "long": "--quiet",
              "description": "do not prompt for confirmation of recovery"
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            }
          ]
        },
        {
          "name": "migrate",
          "description": "Migrates the source mobile service using the capacity reserved by the destination mobile service in a different region. This command is for disaster recover scenarios and it may result in up to 30 minutes of downtime as the migration completes.",
          "fullName": "mobile migrate",
          "usage": "[options] [sourceservicename] [destinationservicename]",
          "filePath": "commands/asm/mobile.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-q, --quiet",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-q",
              "long": "--quiet",
              "description": "do not prompt for confirmation of migration"
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            }
          ]
        }
      ],
      "categories": {
        "key": {
          "name": "key",
          "description": "Commands to manage your Mobile Service keys",
          "fullName": "mobile key",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "regenerate",
              "description": "Regenerate the mobile service key",
              "fullName": "mobile key regenerate",
              "usage": "[options] [servicename] [type]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": "use the subscription id"
                }
              ]
            },
            {
              "name": "set",
              "description": "Set the mobile service key to a specific value",
              "fullName": "mobile key set",
              "usage": "[options] [servicename] [type] [value]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": "use the subscription id"
                }
              ]
            }
          ],
          "categories": {}
        },
        "config": {
          "name": "config",
          "description": "Commands to manage your Mobile Service configuration",
          "fullName": "mobile config",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "Show your mobile service configuration settings",
              "fullName": "mobile config list",
              "usage": "[options] [servicename]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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"
                }
              ]
            },
            {
              "name": "set",
              "description": "Set a mobile service configuration setting",
              "fullName": "mobile config set",
              "usage": "[options] <servicename> <key> [value]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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, --file <file>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--file",
                  "description": "read the value of the setting from a file"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "get",
              "description": "Get a mobile service configuration setting",
              "fullName": "mobile config get",
              "usage": "[options] [servicename] [key]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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, --file <file>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--file",
                  "description": "save the value of the setting to a file"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            }
          ],
          "categories": {}
        },
        "domain": {
          "name": "domain",
          "description": "Commands to manage your Mobile Service Domains",
          "fullName": "mobile domain",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List domains for mobile service",
              "fullName": "mobile domain list",
              "usage": "[options] [servicename]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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"
                }
              ]
            },
            {
              "name": "add",
              "description": "Add domain to mobile service",
              "fullName": "mobile domain add",
              "usage": "[options] [servicename] [domain]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete domain from mobile service",
              "fullName": "mobile domain delete",
              "usage": "[options] [servicename]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": {
            "ssl": {
              "name": "ssl",
              "description": "Commands to manage SSL for your Mobile Service Domains",
              "fullName": "mobile domain ssl",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Show SSL state for domain",
                  "fullName": "mobile domain ssl show",
                  "usage": "[options] [servicename] [domain]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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"
                    }
                  ]
                },
                {
                  "name": "enable",
                  "description": "Enable SSL for domain by attaching an SSL Certificate.  To add SSL Certificates use the \"azure mobile cert add\" command",
                  "fullName": "mobile domain ssl enable",
                  "usage": "[options] [servicename] [domain] [thumbprint]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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"
                    }
                  ]
                },
                {
                  "name": "disable",
                  "description": "Disable SSL for domain by detaching SSL Certificate.",
                  "fullName": "mobile domain ssl disable",
                  "usage": "[options] [servicename] [domain] [thumbprint]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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": {}
            }
          }
        },
        "cert": {
          "name": "cert",
          "description": "Commands to manage your Mobile Service Certificates for Domains",
          "fullName": "mobile cert",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List certificates for mobile service",
              "fullName": "mobile cert list",
              "usage": "[options] [servicename]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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"
                }
              ]
            },
            {
              "name": "add",
              "description": "Add certificate to mobile service",
              "fullName": "mobile cert add",
              "usage": "[options] [servicename] [certificate-path] [key]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete certificate from mobile service",
              "fullName": "mobile cert delete",
              "usage": "[options] [servicename] [thumbprint]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": {}
        },
        "push": {
          "name": "push",
          "description": "Commands to manage your Mobile Service Push Settings",
          "fullName": "mobile push",
          "usage": "[options]",
          "options": [],
          "commands": [],
          "categories": {
            "nh": {
              "name": "nh",
              "description": "Manage notification hub settings for mobile service",
              "fullName": "mobile push nh",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "get",
                  "description": "Get notification hub settings for mobile service",
                  "fullName": "mobile push nh get",
                  "usage": "[options] [servicename]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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"
                    }
                  ]
                },
                {
                  "name": "enable",
                  "description": "Create notification hub for mobile service",
                  "fullName": "mobile push nh enable",
                  "usage": "[options] [servicename]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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"
                    },
                    {
                      "flags": "--nowait",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--nowait",
                      "description": "Do not wait for push operation to complete"
                    }
                  ]
                },
                {
                  "name": "disable",
                  "description": "Create notification hub for mobile service",
                  "fullName": "mobile push nh disable",
                  "usage": "[options] [servicename]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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": {}
            },
            "gcm": {
              "name": "gcm",
              "description": "Manage GCM settings for mobile service",
              "fullName": "mobile push gcm",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "get",
                  "description": "Get google cloud API key for mobile service",
                  "fullName": "mobile push gcm get",
                  "usage": "[options] [servicename]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Set google cloud API key for mobile service",
                  "fullName": "mobile push gcm set",
                  "usage": "[options] [servicename] [apiKey]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete google cloud API key for mobile service",
                  "fullName": "mobile push gcm delete",
                  "usage": "[options] [servicename]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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": {}
            },
            "apns": {
              "name": "apns",
              "description": "Manage APNS settings for mobile service",
              "fullName": "mobile push apns",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "get",
                  "description": "Get Apple push notification settings for mobile service",
                  "fullName": "mobile push apns get",
                  "usage": "[options] [servicename]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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"
                    },
                    {
                      "flags": "-f, --file <file>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--file",
                      "description": "save the certificate to file"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Set Apple push notification settings for mobile service",
                  "fullName": "mobile push apns set",
                  "usage": "[options] [servicename] [mode] [certificateFile]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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"
                    },
                    {
                      "flags": "-p, --password <password>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--password",
                      "description": "password for certificateFile"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete Apple push notification settings for mobile service",
                  "fullName": "mobile push apns delete",
                  "usage": "[options] [servicename]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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": {}
            },
            "mpns": {
              "name": "mpns",
              "description": "Manage Windows Phone notification settings for mobile service",
              "fullName": "mobile push mpns",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "get",
                  "description": "Get windows phone notification settings for mobile service",
                  "fullName": "mobile push mpns get",
                  "usage": "[options] [servicename]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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"
                    },
                    {
                      "flags": "-f, --file <file>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--file",
                      "description": "save the certificate to file"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Set windows phone notification settings for mobile service",
                  "fullName": "mobile push mpns set",
                  "usage": "[options] [servicename] [certificateFile] [password]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete windows phone notification settings for mobile service",
                  "fullName": "mobile push mpns delete",
                  "usage": "[options] [servicename]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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": {}
            },
            "wns": {
              "name": "wns",
              "description": "Manage windows application credentials for mobile service",
              "fullName": "mobile push wns",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "get",
                  "description": "Get windows application credentials for mobile service",
                  "fullName": "mobile push wns get",
                  "usage": "[options] [servicename]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Set windows application credentials for mobile service",
                  "fullName": "mobile push wns set",
                  "usage": "[options] [servicename] [clientSecret] [packageSID]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete windows application credentials for mobile service",
                  "fullName": "mobile push wns delete",
                  "usage": "[options] [servicename]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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": {}
            }
          }
        },
        "auth": {
          "name": "auth",
          "description": "Commands to manage authentication settings for mobile service",
          "fullName": "mobile auth",
          "usage": "[options]",
          "options": [],
          "commands": [],
          "categories": {
            "microsoftaccount": {
              "name": "microsoftaccount",
              "description": "Manage microsoft account settings for mobile service",
              "fullName": "mobile auth microsoftaccount",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "get",
                  "description": "Get microsoft account settings for mobile service",
                  "fullName": "mobile auth microsoftaccount get",
                  "usage": "[options] [servicename]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Set microsoft account settings for mobile service",
                  "fullName": "mobile auth microsoftaccount set",
                  "usage": "[options] [servicename] [clientId] [clientSecret]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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"
                    },
                    {
                      "flags": "--packageSid <packageSid>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "long": "--packageSid",
                      "description": "Package SID to be set"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete microsoft account settings for mobile service",
                  "fullName": "mobile auth microsoftaccount delete",
                  "usage": "[options] [servicename]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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": {}
            },
            "facebook": {
              "name": "facebook",
              "description": "Manage facebook settings for mobile service",
              "fullName": "mobile auth facebook",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "get",
                  "description": "Get facebook identity settings for mobile service",
                  "fullName": "mobile auth facebook get",
                  "usage": "[options] [servicename]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Set facebook identity settings for mobile service",
                  "fullName": "mobile auth facebook set",
                  "usage": "[options] [servicename] [apiKey] [appSecret]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete facebook identity settings for mobile service",
                  "fullName": "mobile auth facebook delete",
                  "usage": "[options] [servicename]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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": {}
            },
            "twitter": {
              "name": "twitter",
              "description": "Manage twitter settings for mobile service",
              "fullName": "mobile auth twitter",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "get",
                  "description": "Get twitter identity settings for mobile service",
                  "fullName": "mobile auth twitter get",
                  "usage": "[options] [servicename]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Set twitter identity settings for mobile service",
                  "fullName": "mobile auth twitter set",
                  "usage": "[options] [servicename] [apiKey] [apiSecret]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete twitter identity settings for mobile service",
                  "fullName": "mobile auth twitter delete",
                  "usage": "[options] [servicename]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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": {}
            },
            "google": {
              "name": "google",
              "description": "Manage Google settings for mobile service",
              "fullName": "mobile auth google",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "get",
                  "description": "Get google identity settings for mobile service",
                  "fullName": "mobile auth google get",
                  "usage": "[options] [servicename]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Set google identity settings for mobile service",
                  "fullName": "mobile auth google set",
                  "usage": "[options] [servicename] [clientId] [clientSecret]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete google identity settings for mobile service",
                  "fullName": "mobile auth google delete",
                  "usage": "[options] [servicename]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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": {}
            },
            "aad": {
              "name": "aad",
              "description": "Manage azure Active Directory settings for mobile service",
              "fullName": "mobile auth aad",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "get",
                  "description": "Get azure Active Directory identity settings for mobile service",
                  "fullName": "mobile auth aad get",
                  "usage": "[options] [servicename]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Set azure Active Directory identity settings for mobile service",
                  "fullName": "mobile auth aad set",
                  "usage": "[options] [servicename] [clientId]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete azure Active Directory identity settings for mobile service",
                  "fullName": "mobile auth aad delete",
                  "usage": "[options] [servicename]",
                  "filePath": "commands/asm/mobile.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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": {
                "tenant": {
                  "name": "tenant",
                  "description": "Manage azure Active Directory tenants for mobile service",
                  "fullName": "mobile auth aad tenant",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "list",
                      "description": "List azure Active Directory tenants for mobile service",
                      "fullName": "mobile auth aad tenant list",
                      "usage": "[options] [servicename]",
                      "filePath": "commands/asm/mobile.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": 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"
                        }
                      ]
                    },
                    {
                      "name": "add",
                      "description": "Add azure Active Directory tenant for mobile service",
                      "fullName": "mobile auth aad tenant add",
                      "usage": "[options] [servicename] [tenant]",
                      "filePath": "commands/asm/mobile.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": 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"
                        }
                      ]
                    },
                    {
                      "name": "delete",
                      "description": "Remove azure Active Directory tenant for mobile service",
                      "fullName": "mobile auth aad tenant delete",
                      "usage": "[options] [servicename] [tenant]",
                      "filePath": "commands/asm/mobile.js",
                      "options": [
                        {
                          "flags": "-v, --verbose",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-v",
                          "long": "--verbose",
                          "description": "use verbose output"
                        },
                        {
                          "flags": "-vv",
                          "required": 0,
                          "optional": 0,
                          "bool": 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": {}
                }
              }
            }
          }
        },
        "table": {
          "name": "table",
          "description": "Commands to manage your Mobile Service tables",
          "fullName": "mobile table",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List mobile service tables",
              "fullName": "mobile table list",
              "usage": "[options] [servicename]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show details for a mobile service table",
              "fullName": "mobile table show",
              "usage": "[options] [servicename] [tablename]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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"
                }
              ]
            },
            {
              "name": "create",
              "description": "Create a new mobile service table",
              "fullName": "mobile table create",
              "usage": "[options] [servicename] [tablename]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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, --permissions <permissions>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--permissions",
                  "description": "comma delimited list of <operation>=<permission> pairs"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                },
                {
                  "flags": "--integerId",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--integerId",
                  "description": "Create a table with an integer id column"
                }
              ]
            },
            {
              "name": "update",
              "description": "Update mobile service table properties",
              "fullName": "mobile table update",
              "usage": "[options] [servicename] [tablename]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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, --permissions <permissions>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--permissions",
                  "description": "comma delimited list of <operation>=<permission> pairs"
                },
                {
                  "flags": "--addColumn <columns>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--addColumn",
                  "description": "comma separated list of <name>=<type> to add"
                },
                {
                  "flags": "--deleteColumn <columns>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--deleteColumn",
                  "description": "comma separated list of columns to delete"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "do not prompt for confirmation of column deletion"
                },
                {
                  "flags": "--addIndex <columns>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--addIndex",
                  "description": "comma separated list of columns to create an index on"
                },
                {
                  "flags": "--deleteIndex <columns>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--deleteIndex",
                  "description": "comma separated list of columns to delete an index from"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a mobile service table",
              "fullName": "mobile table delete",
              "usage": "[options] [servicename] [tablename]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "do not prompt for confirmation"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            }
          ],
          "categories": {}
        },
        "data": {
          "name": "data",
          "description": "Commands to manage your Mobile Service tables data",
          "fullName": "mobile data",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "read",
              "description": "Query data from a mobile service table",
              "fullName": "mobile data read",
              "usage": "[options] [servicename] [tablename] [query]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-k, --skip <top>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--skip",
                  "description": "skip the first <skip> number of rows"
                },
                {
                  "flags": "-t, --top <top>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--top",
                  "description": "return the first <top> number of remaining rows"
                },
                {
                  "flags": "-l, --list",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--list",
                  "description": "display results in list format"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "truncate",
              "description": "Delete all data from a mobile service table",
              "fullName": "mobile data truncate",
              "usage": "[options] [servicename] [tablename]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "do not prompt for confirmation"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a record from the mobile service table",
              "fullName": "mobile data delete",
              "usage": "[options] [servicename] [tablename] [recordid]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "do not prompt for confirmation"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            }
          ],
          "categories": {}
        },
        "script": {
          "name": "script",
          "description": "Commands to manage your Mobile Service scripts",
          "fullName": "mobile script",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List mobile service scripts",
              "fullName": "mobile script list",
              "usage": "[options] [servicename]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": "use the subscription id"
                }
              ]
            },
            {
              "name": "download",
              "description": "Downloads a mobile service script",
              "fullName": "mobile script download",
              "usage": "[options] [servicename] [scriptname]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": "use the subscription id"
                },
                {
                  "flags": "-f, --file <file>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--file",
                  "description": "file to save the script to"
                },
                {
                  "flags": "-o, --override",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--override",
                  "description": "override existing files"
                },
                {
                  "flags": "-c, --console",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--console",
                  "description": "write the script to the console instead of a file"
                }
              ]
            },
            {
              "name": "upload",
              "description": "Uploads a mobile service script",
              "fullName": "mobile script upload",
              "usage": "[options] [servicename] [scriptname]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": "use the subscription id"
                },
                {
                  "flags": "-f, --file <file>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--file",
                  "description": "file to read the script from"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Deletes a mobile service script",
              "fullName": "mobile script delete",
              "usage": "[options] [servicename] [scriptname]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": "use the subscription id"
                }
              ]
            }
          ],
          "categories": {}
        },
        "scale": {
          "name": "scale",
          "description": "Commands to manage your Mobile Service scaling",
          "fullName": "mobile scale",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "show",
              "description": "Show the scale settings of a mobile service",
              "fullName": "mobile scale show",
              "usage": "[options] [servicename]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": "use the subscription id"
                }
              ]
            },
            {
              "name": "change",
              "description": "Change the scale settings of a mobile service",
              "fullName": "mobile scale change",
              "usage": "[options] [servicename]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": "use the subscription id"
                },
                {
                  "flags": "-t, --tier <tier>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--tier",
                  "description": "choose the free, basic or standard tier"
                },
                {
                  "flags": "-i, --numberOfInstances <count>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--numberOfInstances",
                  "description": "number of instances in basic or standard mode"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "do not prompt for confirmation"
                }
              ]
            }
          ],
          "categories": {}
        },
        "job": {
          "name": "job",
          "description": "Commands to manage your Mobile Service scheduled jobs",
          "fullName": "mobile job",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List mobile service scheduled jobs",
              "fullName": "mobile job list",
              "usage": "[options] [servicename]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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"
                }
              ]
            },
            {
              "name": "create",
              "description": "Create a mobile service scheduled job",
              "fullName": "mobile job create",
              "usage": "[options] [servicename] [jobname]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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, --interval <number>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--interval",
                  "description": "job interval as an integer; defaults to 15"
                },
                {
                  "flags": "-u, --intervalUnit <unit>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--intervalUnit",
                  "description": "specify one of: minute, hour, day, month or none for on-demand jobs; defaults to minute"
                },
                {
                  "flags": "-t, --startTime <time>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--startTime",
                  "description": "time of the first run of the script in ISO format; defaults to now"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "update",
              "description": "Update a mobile service scheduled job",
              "fullName": "mobile job update",
              "usage": "[options] [servicename] [jobname]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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, --interval <number>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--interval",
                  "description": "job interval as an integer"
                },
                {
                  "flags": "-u, --intervalUnit <unit>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--intervalUnit",
                  "description": "specify one of: minute, hour, day, month or none for on-demand jobs"
                },
                {
                  "flags": "-t, --startTime <time>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--startTime",
                  "description": "time of the first run of the script in ISO format"
                },
                {
                  "flags": "-a, --status <status>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--status",
                  "description": "enabled or disabled"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a mobile service scheduled job",
              "fullName": "mobile job delete",
              "usage": "[options] [servicename] [jobname]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": {}
        },
        "preview": {
          "name": "preview",
          "description": "Commands to enable preview features for your Mobile Service",
          "fullName": "mobile preview",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "Show the preview features enabled for a mobile service",
              "fullName": "mobile preview list",
              "usage": "[options] [servicename]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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"
                }
              ]
            },
            {
              "name": "enable",
              "description": "Enable a preview feature for a mobile service. Note that preview features cannot be disabled for a mobile service!",
              "fullName": "mobile preview enable",
              "usage": "[options] [servicename] [featurename]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": {}
        },
        "api": {
          "name": "api",
          "description": "Commands to manage your mobile service APIs",
          "fullName": "mobile api",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List mobile service custom APIs",
              "fullName": "mobile api list",
              "usage": "[options] [servicename]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": "use the subscription id"
                }
              ]
            },
            {
              "name": "create",
              "description": "Creates a mobile service custom API",
              "fullName": "mobile api create",
              "usage": "[options] [servicename] [apiname]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": "use the subscription id"
                },
                {
                  "flags": "-p, --permissions <permissions>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--permissions",
                  "description": "comma delimited list of <method>=<permission> pairs"
                }
              ]
            },
            {
              "name": "update",
              "description": "Updates a mobile service custom API",
              "fullName": "mobile api update",
              "usage": "[options] [servicename] [apiname]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": "use the subscription id"
                },
                {
                  "flags": "-p, --permissions <permissions>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--permissions",
                  "description": "comma delimited list of <method>=<permission> pairs"
                },
                {
                  "flags": "-f, --force",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--force",
                  "description": "override any custom changes to the permissions metadata file"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Deletes a mobile service custom API",
              "fullName": "mobile api delete",
              "usage": "[options] [servicename] [apiname]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": "use the subscription id"
                }
              ]
            }
          ],
          "categories": {}
        },
        "appsetting": {
          "name": "appsetting",
          "description": "Commands to manage your mobile application app settings",
          "fullName": "mobile appsetting",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "Show your mobile application app settings",
              "fullName": "mobile appsetting list",
              "usage": "[options] [servicename]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": "use the subscription id"
                }
              ]
            },
            {
              "name": "add",
              "description": "Add an application setting for your mobile service",
              "fullName": "mobile appsetting add",
              "usage": "[options] [servicename] [name] [value]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": "use the subscription id"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Remove an application setting for your mobile service",
              "fullName": "mobile appsetting delete",
              "usage": "[options] [servicename] [name]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": "use the subscription id"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show an application setting for your mobile service",
              "fullName": "mobile appsetting show",
              "usage": "[options] [servicename] [name]",
              "filePath": "commands/asm/mobile.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": "use the subscription id"
                }
              ]
            }
          ],
          "categories": {}
        }
      }
    },
    "network": {
      "name": "network",
      "description": "Commands to manage your networks",
      "fullName": "network",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "export",
          "description": "Export the current network configuration to a file",
          "fullName": "network export",
          "usage": "[options] <file-path>",
          "filePath": "commands/asm/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 <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            }
          ]
        },
        {
          "name": "import",
          "description": "Set the network configuration from a file",
          "fullName": "network import",
          "usage": "[options] <file-path>",
          "filePath": "commands/asm/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 <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            }
          ]
        }
      ],
      "categories": {
        "vnet": {
          "name": "vnet",
          "description": "Commands to manage your virtual networks",
          "fullName": "network vnet",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "abort-migration",
              "description": "Abort IaaS Classic to ARM migration for a virtual network.",
              "fullName": "network vnet abort-migration",
              "usage": "[options] <name>",
              "filePath": "commands/asm/network.generated/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": "name"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            },
            {
              "name": "commit-migration",
              "description": "Commit IaaS Classic to ARM migration for a virtual network.",
              "fullName": "network vnet commit-migration",
              "usage": "[options] <name>",
              "filePath": "commands/asm/network.generated/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": "name"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            },
            {
              "name": "prepare-migration",
              "description": "Prepare IaaS Classic to ARM migration for a virtual network.",
              "fullName": "network vnet prepare-migration",
              "usage": "[options] <name>",
              "filePath": "commands/asm/network.generated/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": "name"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "The subscription identifier"
                }
              ]
            },
            {
              "name": "create",
              "description": "Create a virtual network",
              "fullName": "network vnet create",
              "usage": "[options] <vnet>",
              "filePath": "commands/asm/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": "--vnet <vnet>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--vnet",
                  "description": "the name of the virtual network"
                },
                {
                  "flags": "-e, --address-space <ipv4>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--address-space",
                  "description": "the address space for the virtual network"
                },
                {
                  "flags": "-m, --max-vm-count <number>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--max-vm-count",
                  "description": "the maximum number of VMs in the address space"
                },
                {
                  "flags": "-i, --cidr <number>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--cidr",
                  "description": "the address space network mask in CIDR format"
                },
                {
                  "flags": "-p, --subnet-start-ip <ipv4>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--subnet-start-ip",
                  "description": "the start IP address of subnet"
                },
                {
                  "flags": "-n, --subnet-name <name>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--subnet-name",
                  "description": "the name for the subnet"
                },
                {
                  "flags": "-c, --subnet-vm-count <number>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--subnet-vm-count",
                  "description": "the maximum number of VMs in the subnet"
                },
                {
                  "flags": "-r, --subnet-cidr <number>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--subnet-cidr",
                  "description": "the subnet network mask in CIDR format"
                },
                {
                  "flags": "-l, --location <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-f, --create-new-affinity-group",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--create-new-affinity-group",
                  "description": "creates a new affinity group at the location specified in --location"
                },
                {
                  "flags": "-a, --affinity-group <name>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--affinity-group",
                  "description": "the affinity group"
                },
                {
                  "flags": "-d, --dns-server-id <dns-id>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-server-id",
                  "description": "the name identifier of the DNS server"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "list",
              "description": "List your virtual networks",
              "fullName": "network vnet list",
              "usage": "[options]",
              "filePath": "commands/asm/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 <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show details about a virtual network",
              "fullName": "network vnet show",
              "usage": "<vnet> [options]",
              "filePath": "commands/asm/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": "--vnet <vnet>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--vnet",
                  "description": "the name of the virtual network"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a virtual network",
              "fullName": "network vnet delete",
              "usage": "[options] <vnet>",
              "filePath": "commands/asm/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": "--vnet <vnet>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--vnet",
                  "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 <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            }
          ],
          "categories": {
            "local-network": {
              "name": "local-network",
              "description": "Commands to manage association between virtual network and local network",
              "fullName": "network vnet local-network",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "add",
                  "description": "Associate a local network with a virtual network",
                  "fullName": "network vnet local-network add",
                  "usage": "[options] <name> <local-network-name>",
                  "filePath": "commands/asm/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 virtual network"
                    },
                    {
                      "flags": "-l, --local-network-name <local-network-name>",
                      "required": -26,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--local-network-name",
                      "description": "the name of the local network"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                },
                {
                  "name": "remove",
                  "description": "Remove association between a local network and a virtual network",
                  "fullName": "network vnet local-network remove",
                  "usage": "[options] <name> <local-network-name>",
                  "filePath": "commands/asm/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 virtual network"
                    },
                    {
                      "flags": "-l, --local-network-name <local-network-name>",
                      "required": -26,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--local-network-name",
                      "description": "the name of the local network"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "static-ip": {
              "name": "static-ip",
              "description": "Commands to manage your virtual network static IP addresses",
              "fullName": "network vnet static-ip",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "check",
                  "description": "Check the availability of a static IP address",
                  "fullName": "network vnet static-ip check",
                  "usage": "[options] <vnet> <ip-address>",
                  "filePath": "commands/asm/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 <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "subnet": {
              "name": "subnet",
              "description": "Commands to manage your virtual network subnets",
              "fullName": "network vnet subnet",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a virtual network subnet",
                  "fullName": "network vnet subnet create",
                  "usage": "[options] <vnet-name> <name>",
                  "filePath": "commands/asm/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": "-t, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--vnet-name",
                      "description": "the name of the virtual network"
                    },
                    {
                      "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"
                    },
                    {
                      "flags": "-o, --network-security-group-name <network-security-group-name>",
                      "required": -35,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--network-security-group-name",
                      "description": "the network security group name"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Set a virtual network subnet",
                  "fullName": "network vnet subnet set",
                  "usage": "[options] <vnet-name> <name>",
                  "filePath": "commands/asm/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": "-t, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--vnet-name",
                      "description": "the name of the virtual network"
                    },
                    {
                      "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"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "Get all subnets in a virtual network",
                  "fullName": "network vnet subnet list",
                  "usage": "[options] <vnet-name>",
                  "filePath": "commands/asm/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": "-e, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--vnet-name",
                      "description": "the name of the virtual network"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show a details about subnet in a virtual network",
                  "fullName": "network vnet subnet show",
                  "usage": "[options] <vnet-name>",
                  "filePath": "commands/asm/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": "-e, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--vnet-name",
                      "description": "the name of the virtual network"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the subnet"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a virtual network subnet",
                  "fullName": "network vnet subnet delete",
                  "usage": "[options] <vnet-name> <name>",
                  "filePath": "commands/asm/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": "-e, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--vnet-name",
                      "description": "the name of the virtual network"
                    },
                    {
                      "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 <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                }
              ],
              "categories": {
                "route-table": {
                  "name": "route-table",
                  "description": "Commands to manage subnet Route Tables",
                  "fullName": "network vnet subnet route-table",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "add",
                      "description": "Add Route Table to a subnet",
                      "fullName": "network vnet subnet route-table add",
                      "usage": "[options] <vnet-name> <subnet-name> <route-table-name>",
                      "filePath": "commands/asm/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": "-t, --vnet-name <vnet-name>",
                          "required": -17,
                          "optional": 0,
                          "bool": true,
                          "short": "-t",
                          "long": "--vnet-name",
                          "description": "the name of the virtual network"
                        },
                        {
                          "flags": "-n, --subnet-name <subnet-name>",
                          "required": -19,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--subnet-name",
                          "description": "the name of the subnet"
                        },
                        {
                          "flags": "-r, --route-table-name <route-table-name>",
                          "required": -24,
                          "optional": 0,
                          "bool": true,
                          "short": "-r",
                          "long": "--route-table-name",
                          "description": "the name of the Route Table that needs to be applied to the subnet"
                        },
                        {
                          "flags": "-s, --subscription <id>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription id"
                        }
                      ]
                    },
                    {
                      "name": "delete",
                      "description": "Remove Route Table from a subnet",
                      "fullName": "network vnet subnet route-table delete",
                      "usage": "[options] <vnet-name> <subnet-name> <route-table-name>",
                      "filePath": "commands/asm/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": "-t, --vnet-name <vnet-name>",
                          "required": -17,
                          "optional": 0,
                          "bool": true,
                          "short": "-t",
                          "long": "--vnet-name",
                          "description": "the name of the virtual network"
                        },
                        {
                          "flags": "-n, --subnet-name <subnet-name>",
                          "required": -19,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--subnet-name",
                          "description": "the name of the subnet"
                        },
                        {
                          "flags": "-r, --route-table-name <route-table-name>",
                          "required": -24,
                          "optional": 0,
                          "bool": true,
                          "short": "-r",
                          "long": "--route-table-name",
                          "description": "the name of the Route Table that needs to be applied to 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 <id>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription id"
                        }
                      ]
                    },
                    {
                      "name": "show",
                      "description": "Get Route Table for a subnet",
                      "fullName": "network vnet subnet route-table show",
                      "usage": "[options] <vnet-name> <subnet-name>",
                      "filePath": "commands/asm/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": "-t, --vnet-name <vnet-name>",
                          "required": -17,
                          "optional": 0,
                          "bool": true,
                          "short": "-t",
                          "long": "--vnet-name",
                          "description": "the name of the virtual network"
                        },
                        {
                          "flags": "-n, --subnet-name <subnet-name>",
                          "required": -19,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--subnet-name",
                          "description": "the name of the subnet"
                        },
                        {
                          "flags": "-d, --detailed",
                          "required": 0,
                          "optional": 0,
                          "bool": true,
                          "short": "-d",
                          "long": "--detailed",
                          "description": "get full details of the Route Table, without this flag only\n     Route Table name will be shown"
                        },
                        {
                          "flags": "-s, --subscription <id>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription id"
                        }
                      ]
                    }
                  ],
                  "categories": {}
                }
              }
            }
          }
        },
        "dns-server": {
          "name": "dns-server",
          "description": "Commands to manage your DNS servers",
          "fullName": "network dns-server",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List DNS servers registered in network",
              "fullName": "network dns-server list",
              "usage": "[options]",
              "filePath": "commands/asm/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 <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "register",
              "description": "Register a DNS server with network",
              "fullName": "network dns-server register",
              "usage": "[options] <dns-ip>",
              "filePath": "commands/asm/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": "-p, --dns-ip <dns-ip>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--dns-ip",
                  "description": "the IP address of the DNS server"
                },
                {
                  "flags": "-i, --dns-id <dns-id>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--dns-id",
                  "description": "the name identifier of the DNS server"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "unregister",
              "description": "Unregister a DNS server registered in the current network",
              "fullName": "network dns-server unregister",
              "usage": "[options] <dns-ip>",
              "filePath": "commands/asm/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": "-p, --dns-ip <dns-ip>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--dns-ip",
                  "description": "the IP address of the DNS server"
                },
                {
                  "flags": "-i, --dns-id <dns-id>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--dns-id",
                  "description": "the name identifier of the DNS server"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode, do not ask for unregister confirmation"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            }
          ],
          "categories": {}
        },
        "reserved-ip": {
          "name": "reserved-ip",
          "description": "Commands to manage your reserved public virtual IP addresses",
          "fullName": "network reserved-ip",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a reserved IP address",
              "fullName": "network reserved-ip create",
              "usage": "[options] <name> <location>",
              "filePath": "commands/asm/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": "-e, --label <label>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--label",
                  "description": "the reserved IP address label"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "list",
              "description": "List your reserved IP addresses",
              "fullName": "network reserved-ip list",
              "usage": "[options]",
              "filePath": "commands/asm/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 <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show details about a reserved IP address",
              "fullName": "network reserved-ip show",
              "usage": "[options] <name>",
              "filePath": "commands/asm/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 <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a reserved IP address",
              "fullName": "network reserved-ip delete",
              "usage": "[options] <name>",
              "filePath": "commands/asm/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": "-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"
                }
              ]
            }
          ],
          "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] <name> <location>",
              "filePath": "commands/asm/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 network security group"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-b, --label <label>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--label",
                  "description": "the label 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]",
              "filePath": "commands/asm/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 <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show the details about a network security group",
              "fullName": "network nsg show",
              "usage": "[options] <name>",
              "filePath": "commands/asm/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 network security group"
                },
                {
                  "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] <name>",
              "filePath": "commands/asm/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 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"
                }
              ]
            }
          ],
          "categories": {
            "rule": {
              "name": "rule",
              "description": "Commands to manage network security group rules",
              "fullName": "network nsg rule",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a network security group rule",
                  "fullName": "network nsg rule create",
                  "usage": "[options] <nsg-name> <name>",
                  "filePath": "commands/asm/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": "-a, --nsg-name <nsg-name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--nsg-name",
                      "description": "the name of the network security group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the rule"
                    },
                    {
                      "flags": "-p, --protocol <protocol>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--protocol",
                      "description": "the protocol"
                    },
                    {
                      "flags": "-f, --source-address-prefix <source-address-prefix>",
                      "required": -29,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--source-address-prefix",
                      "description": "the source address prefix"
                    },
                    {
                      "flags": "-o, --source-port-range <source-port-range>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--source-port-range",
                      "description": "the source port range"
                    },
                    {
                      "flags": "-e, --destination-address-prefix <destination-address-prefix>",
                      "required": -34,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--destination-address-prefix",
                      "description": "the destination address prefix"
                    },
                    {
                      "flags": "-u, --destination-port-range <destination-port-range>",
                      "required": -30,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--destination-port-range",
                      "description": "the destination port range"
                    },
                    {
                      "flags": "-c, --action <action>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--action",
                      "description": "the action mode [Allow, Deny]"
                    },
                    {
                      "flags": "-y, --priority <priority>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-y",
                      "long": "--priority",
                      "description": "the priority"
                    },
                    {
                      "flags": "-r, --type <type>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--type",
                      "description": "the type"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Set a network security group rule",
                  "fullName": "network nsg rule set",
                  "usage": "[options] <nsg-name> <name>",
                  "filePath": "commands/asm/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": "-a, --nsg-name <nsg-name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--nsg-name",
                      "description": "the name of the network security group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the rule"
                    },
                    {
                      "flags": "-p, --protocol <protocol>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--protocol",
                      "description": "the protocol"
                    },
                    {
                      "flags": "-f, --source-address-prefix <source-address-prefix>",
                      "required": -29,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--source-address-prefix",
                      "description": "the source address prefix"
                    },
                    {
                      "flags": "-o, --source-port-range <source-port-range>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--source-port-range",
                      "description": "the source port range"
                    },
                    {
                      "flags": "-e, --destination-address-prefix <destination-address-prefix>",
                      "required": -34,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--destination-address-prefix",
                      "description": "the destination address prefix"
                    },
                    {
                      "flags": "-u, --destination-port-range <destination-port-range>",
                      "required": -30,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--destination-port-range",
                      "description": "the destination port range"
                    },
                    {
                      "flags": "-c, --action <action>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--action",
                      "description": "the action mode [Allow, Deny]"
                    },
                    {
                      "flags": "-y, --priority <priority>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-y",
                      "long": "--priority",
                      "description": "the priority"
                    },
                    {
                      "flags": "-r, --type <type>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--type",
                      "description": "the type"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List rules in a network security group",
                  "fullName": "network nsg rule list",
                  "usage": "[options] <nsg-name>",
                  "filePath": "commands/asm/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": "-a, --nsg-name <nsg-name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--nsg-name",
                      "description": "the name of the network security group"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Show rule in a network security group",
                  "fullName": "network nsg rule show",
                  "usage": "[options] <nsg-name> <name>",
                  "filePath": "commands/asm/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": "-a, --nsg-name <nsg-name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--nsg-name",
                      "description": "the name of the network security group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the rule"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a network security group rule",
                  "fullName": "network nsg rule delete",
                  "usage": "[options] <nsg-name> <name>",
                  "filePath": "commands/asm/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": "-a, --nsg-name <nsg-name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--nsg-name",
                      "description": "the name of the network security group"
                    },
                    {
                      "flags": "-n, --name <name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--name",
                      "description": "the name of the 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 <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "subnet": {
              "name": "subnet",
              "description": "Commands to manage network security group of subnet",
              "fullName": "network nsg subnet",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "add",
                  "description": "Associate a network security group with a subnet",
                  "fullName": "network nsg subnet add",
                  "usage": "[options] <nsg-name> <vnet-name> <subnet-name>",
                  "filePath": "commands/asm/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": "-a, --nsg-name <nsg-name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--nsg-name",
                      "description": "the name of the network security group"
                    },
                    {
                      "flags": "-n, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--vnet-name",
                      "description": "the name of the virtual network"
                    },
                    {
                      "flags": "-n, --subnet-name <subnet-name>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--subnet-name",
                      "description": "the name of the virtual network subnet"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                },
                {
                  "name": "remove",
                  "description": "Remove association between a network security group and subnet",
                  "fullName": "network nsg subnet remove",
                  "usage": "[options] <nsg-name> <vnet-name> <subnet-name>",
                  "filePath": "commands/asm/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": "-a, --nsg-name <nsg-name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--nsg-name",
                      "description": "the name of the network security group"
                    },
                    {
                      "flags": "-n, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--vnet-name",
                      "description": "the name of the virtual network"
                    },
                    {
                      "flags": "-n, --subnet-name <subnet-name>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--subnet-name",
                      "description": "the name of the virtual network 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 <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "local-network": {
          "name": "local-network",
          "description": "Commands to manage local network",
          "fullName": "network local-network",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a local network",
              "fullName": "network local-network create",
              "usage": "[options] <name> <address-prefixes>",
              "filePath": "commands/asm/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 local network"
                },
                {
                  "flags": "-a, --address-prefixes <address-prefixes>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--address-prefixes",
                  "description": "the comma separated list of address prefixes"
                },
                {
                  "flags": "-w, --vpn-gateway-address <vpn-gateway-address>",
                  "required": -27,
                  "optional": 0,
                  "bool": true,
                  "short": "-w",
                  "long": "--vpn-gateway-address",
                  "description": "the  VPN Gateway address"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "set",
              "description": "Set a local network",
              "fullName": "network local-network set",
              "usage": "[options] <name>",
              "filePath": "commands/asm/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 local network"
                },
                {
                  "flags": "-a, --address-prefixes <address-prefixes>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--address-prefixes",
                  "description": "the comma separated list of address prefixes"
                },
                {
                  "flags": "-w, --vpn-gateway-address <vpn-gateway-address>",
                  "required": -27,
                  "optional": 0,
                  "bool": true,
                  "short": "-w",
                  "long": "--vpn-gateway-address",
                  "description": "the  VPN Gateway address"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list",
              "description": "Get all local networks",
              "fullName": "network local-network list",
              "usage": "[options]",
              "filePath": "commands/asm/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 <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "show",
              "description": "Get a local network",
              "fullName": "network local-network show",
              "usage": "[options]",
              "filePath": "commands/asm/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 local network"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a local network",
              "fullName": "network local-network delete",
              "usage": "[options] <name>",
              "filePath": "commands/asm/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 local 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 <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            }
          ],
          "categories": {}
        },
        "vpn-gateway": {
          "name": "vpn-gateway",
          "description": "Commands to manage VPN 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] <vnet-name>",
              "filePath": "commands/asm/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, --vnet-name <vnet-name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--vnet-name",
                  "description": "the name of the virtual network"
                },
                {
                  "flags": "-t, --type <type>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--type",
                  "description": "the gateway type, valid values are:\n       [StaticRouting,DynamicRouting],\n       default is StaticRouting"
                },
                {
                  "flags": "-k, --sku <sku>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--sku",
                  "description": "the gateway SKU, valid values are:\n       [Default,HighPerformance],\n       default is Default"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Get a virtual network gateway",
              "fullName": "network vpn-gateway show",
              "usage": "[options] <vnet-name>",
              "filePath": "commands/asm/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, --vnet-name <vnet-name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--vnet-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": "delete",
              "description": "Delete a virtual network gateway",
              "fullName": "network vpn-gateway delete",
              "usage": "[options] <vnet-name>",
              "filePath": "commands/asm/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, --vnet-name <vnet-name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--vnet-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": "resize",
              "description": "Resize a virtual network gateway",
              "fullName": "network vpn-gateway resize",
              "usage": "[options] <vnet-name> <sku>",
              "filePath": "commands/asm/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, --vnet-name <vnet-name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--vnet-name",
                  "description": "the name of the virtual network"
                },
                {
                  "flags": "-k, --sku <sku>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--sku",
                  "description": "the SKU that the existing gateway will be resized to,\n       valid values are [Default or HighPerformance]"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "reset",
              "description": "Reset a virtual network gateway",
              "fullName": "network vpn-gateway reset",
              "usage": "[options] <vnet-name>",
              "filePath": "commands/asm/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, --vnet-name <vnet-name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--vnet-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": {
            "default-site": {
              "name": "default-site",
              "description": "Commands to manage VPN Gateway default site",
              "fullName": "network vpn-gateway default-site",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set local network default site for a virtual network gateway",
                  "fullName": "network vpn-gateway default-site set",
                  "usage": "[options] <vnet-name> <site-name>",
                  "filePath": "commands/asm/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, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--vnet-name",
                      "description": "the name of the virtual network"
                    },
                    {
                      "flags": "-k, --site-name <site-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--site-name",
                      "description": "the local network default site for this virtual network gateway"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "remove",
                  "description": "Remove local network default site configured in a virtual network gateway",
                  "fullName": "network vpn-gateway default-site remove",
                  "usage": "[options] <vnet-name>",
                  "filePath": "commands/asm/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, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--vnet-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": {}
            },
            "shared-key": {
              "name": "shared-key",
              "description": "Commands to manage VPN Gateway shared key",
              "fullName": "network vpn-gateway shared-key",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set shared key used by virtual network gateway to connect to local network site",
                  "fullName": "network vpn-gateway shared-key set",
                  "usage": "[options] <vnet-name> <key-value>",
                  "filePath": "commands/asm/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, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--vnet-name",
                      "description": "the name of the virtual network"
                    },
                    {
                      "flags": "-t, --site-name <site-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--site-name",
                      "description": "the name of the local network site, if not specified then default local network site will be used."
                    },
                    {
                      "flags": "-k, --key-value <key-value>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--key-value",
                      "description": "the shared key value"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                },
                {
                  "name": "reset",
                  "description": "Reset shared key used by virtual network gateway to connect to local network site",
                  "fullName": "network vpn-gateway shared-key reset",
                  "usage": "[options] <vnet-name> <key-length>",
                  "filePath": "commands/asm/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, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--vnet-name",
                      "description": "the name of the virtual network"
                    },
                    {
                      "flags": "-t, --site-name <site-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--site-name",
                      "description": "the name of the local network site, if not specified then default local network site will be used."
                    },
                    {
                      "flags": "-l, --key-length <key-length>",
                      "required": -18,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--key-length",
                      "description": "the number of characters in the shared key, the key length must be between 1 and 128 characters."
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "connection": {
              "name": "connection",
              "description": "Commands to manage VPN Gateway connection",
              "fullName": "network vpn-gateway connection",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "Get all local network connections that can be accessed through a virtual network gateway",
                  "fullName": "network vpn-gateway connection list",
                  "usage": "[options] <vnet-name>",
                  "filePath": "commands/asm/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, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--vnet-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": {}
            },
            "device": {
              "name": "device",
              "description": "Commands to manage VPN Gateway device",
              "fullName": "network vpn-gateway device",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "Get all supported `on premise network devices` that can connect to the gateway",
                  "fullName": "network vpn-gateway device list",
                  "usage": "[options]",
                  "filePath": "commands/asm/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 <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                },
                {
                  "name": "get-script",
                  "description": "Get script to configure local VPN device to connect to the virtual network gateway",
                  "fullName": "network vpn-gateway device get-script",
                  "usage": "[options] <vnet-name>",
                  "filePath": "commands/asm/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, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--vnet-name",
                      "description": "the name of the virtual network"
                    },
                    {
                      "flags": "-o, --vendor <vendor>",
                      "required": -14,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--vendor",
                      "description": "the vendor of the VPN device"
                    },
                    {
                      "flags": "-p, --platform <platform>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--platform",
                      "description": "the platform of the VPN device"
                    },
                    {
                      "flags": "-f, --os-family <os-family>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-f",
                      "long": "--os-family",
                      "description": "the OS family of the VPN device"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "diagnostics": {
              "name": "diagnostics",
              "description": "Commands to manage VPN Gateway diagnostics session",
              "fullName": "network vpn-gateway diagnostics",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "start",
                  "description": "Start a new diagnostics session in a virtual network gateway",
                  "fullName": "network vpn-gateway diagnostics start",
                  "usage": "[options] <vnet-name>",
                  "filePath": "commands/asm/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, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--vnet-name",
                      "description": "the name of the virtual network"
                    },
                    {
                      "flags": "-d, --duration <duration>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--duration",
                      "description": "duration in seconds to perform the diagnostics capture, possible values are between 1 and 300"
                    },
                    {
                      "flags": "-a, --storage-account-name <storage-account-name>",
                      "required": -28,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--storage-account-name",
                      "description": "the name of the storage account where the captured diagnostics data is to be stored."
                    },
                    {
                      "flags": "-k, --storage-account-key <storage-account-key>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "short": "-k",
                      "long": "--storage-account-key",
                      "description": "the key of the storage account that is specified through --storage-account-name parameter"
                    },
                    {
                      "flags": "-c, --container-name <container-name>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--container-name",
                      "description": "the name of the container in the storage account where the captured diagnostics data is stored, default is gatewaypublicdiagnostics"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                },
                {
                  "name": "stop",
                  "description": "Stop current diagnostics session in a virtual network gateway",
                  "fullName": "network vpn-gateway diagnostics stop",
                  "usage": "[options] <vnet-name>",
                  "filePath": "commands/asm/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, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--vnet-name",
                      "description": "the name of the virtual network"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                },
                {
                  "name": "get",
                  "description": "Get current diagnostics session in a virtual network gateway",
                  "fullName": "network vpn-gateway diagnostics get",
                  "usage": "[options] <vnet-name>",
                  "filePath": "commands/asm/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, --vnet-name <vnet-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--vnet-name",
                      "description": "the name of the virtual network"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "route-table": {
          "name": "route-table",
          "description": "Commands to manage Route Table",
          "fullName": "network route-table",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a Route Table",
              "fullName": "network route-table create",
              "usage": "[options] <name> <location>",
              "filePath": "commands/asm/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 Route Table"
                },
                {
                  "flags": "-l, --location <location>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location, this must be same as the location of the virtual network containing the subnet(s) on which this Route Table needs to be applied"
                },
                {
                  "flags": "-b, --label <label>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--label",
                  "description": "the label for the Route Table"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "show",
              "description": "Get a Route Table",
              "fullName": "network route-table show",
              "usage": "[options] <name>",
              "filePath": "commands/asm/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 Route Table"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list",
              "description": "Get all Route Tables",
              "fullName": "network route-table list",
              "usage": "[options]",
              "filePath": "commands/asm/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"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a Route Table",
              "fullName": "network route-table delete",
              "usage": "[options] <name>",
              "filePath": "commands/asm/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 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"
                }
              ]
            }
          ],
          "categories": {
            "route": {
              "name": "route",
              "description": "Commands to manage Route Table routes",
              "fullName": "network route-table route",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set route in a Route Table",
                  "fullName": "network route-table route set",
                  "usage": "[options] <route-table-name> <name> <address-prefix> <next-hop-type>",
                  "filePath": "commands/asm/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": "-r, --route-table-name <route-table-name>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--route-table-name",
                      "description": "the name of the Route Table"
                    },
                    {
                      "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 route address prefix e.g. 0.0.0.0/0"
                    },
                    {
                      "flags": "-t, --next-hop-type <next-hop-type>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--next-hop-type",
                      "description": "the route next hop type, valid values are:\n       [VirtualAppliance,VPNGateway]"
                    },
                    {
                      "flags": "-p, --next-hop-ip-address <next-hop-ip-address>",
                      "required": -27,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--next-hop-ip-address",
                      "description": "the route next hop ip addresses, this parameter is valid\n       only for next hop type VirtualAppliance"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete route from a Route Table",
                  "fullName": "network route-table route delete",
                  "usage": "[options] <route-table-name> <name>",
                  "filePath": "commands/asm/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": "-r, --route-table-name <route-table-name>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--route-table-name",
                      "description": "the name of the Route Table"
                    },
                    {
                      "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"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "application-gateway": {
          "name": "application-gateway",
          "description": "Commands to manage Application Gateway",
          "fullName": "network application-gateway",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create an Application Gateway",
              "fullName": "network application-gateway create",
              "usage": "[options] <name> <vnet-name> <subnet-name>",
              "filePath": "commands/asm/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 Application Gateway"
                },
                {
                  "flags": "-e, --vnet-name <vnet-name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--vnet-name",
                  "description": "the name of the virtual network Application Gateway should be deployed in"
                },
                {
                  "flags": "-t, --subnet-name <subnet-name>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--subnet-name",
                  "description": "the name of subnet which exists in same vnet"
                },
                {
                  "flags": "-c, --instance-count <instance-count>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--instance-count",
                  "description": "the number of instances"
                },
                {
                  "flags": "-z, --gateway-size <gateway-size>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-z",
                  "long": "--gateway-size",
                  "description": "size of the Application Gateway, valid values are [Small,Medium,Large,ExtraLarge,A8]"
                },
                {
                  "flags": "-d, --description <description>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--description",
                  "description": "the description for the Application Gateway"
                },
                {
                  "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] <name>",
              "filePath": "commands/asm/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 Application Gateway"
                },
                {
                  "flags": "-e, --vnet-name <vnet-name>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--vnet-name",
                  "description": "the name of the virtual network Application Gateway should be deployed in"
                },
                {
                  "flags": "-t, --subnet-name <subnet-name>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--subnet-name",
                  "description": "the name of subnet which exists in same vnet"
                },
                {
                  "flags": "-c, --instance-count <instance-count>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--instance-count",
                  "description": "the number of instances"
                },
                {
                  "flags": "-z, --gateway-size <gateway-size>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-z",
                  "long": "--gateway-size",
                  "description": "size of the Application Gateway, valid values are [Small,Medium,Large,ExtraLarge,A8]"
                },
                {
                  "flags": "-d, --description <description>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--description",
                  "description": "the description for the Application Gateway"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "list",
              "description": "Get all Application Gateways",
              "fullName": "network application-gateway list",
              "usage": "[options]",
              "filePath": "commands/asm/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"
                }
              ]
            },
            {
              "name": "show",
              "description": "Get an Application Gateway",
              "fullName": "network application-gateway show",
              "usage": "[options] <name>",
              "filePath": "commands/asm/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 Application Gateway"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete an Application Gateway",
              "fullName": "network application-gateway delete",
              "usage": "[options] <name>",
              "filePath": "commands/asm/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 Application 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": "start",
              "description": "Start an Application Gateway",
              "fullName": "network application-gateway start",
              "usage": "[options] <name>",
              "filePath": "commands/asm/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 Application Gateway"
                },
                {
                  "flags": "-s, --subscription <subscription>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription identifier"
                }
              ]
            },
            {
              "name": "stop",
              "description": "Stop an Application Gateway",
              "fullName": "network application-gateway stop",
              "usage": "[options] <name>",
              "filePath": "commands/asm/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 Application Gateway"
                },
                {
                  "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 Application Gateway configuration",
              "fullName": "network application-gateway config",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "show",
                  "description": "Get an Application Gateway configuration",
                  "fullName": "network application-gateway config show",
                  "usage": "[options] <name>",
                  "filePath": "commands/asm/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 Application Gateway"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "export",
                  "description": "Export Application Gateway configuration to a file",
                  "fullName": "network application-gateway config export",
                  "usage": "[options] <name> <file-path>",
                  "filePath": "commands/asm/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 Application Gateway"
                    },
                    {
                      "flags": "-t, --export-to-file <export-to-file>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--export-to-file",
                      "description": "the path to the file where configuration needs to be exported"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "import",
                  "description": "Import Application Gateway configuration from a file",
                  "fullName": "network application-gateway config import",
                  "usage": "[options] <name> <import-from-file>",
                  "filePath": "commands/asm/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 Application Gateway"
                    },
                    {
                      "flags": "-t, --import-from-file <import-from-file>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--import-from-file",
                      "description": "the path to the configuration file"
                    },
                    {
                      "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 Application Gateway backend address pool",
              "fullName": "network application-gateway address-pool",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "add",
                  "description": "Add a backend address pool to an Application Gateway",
                  "fullName": "network application-gateway address-pool add",
                  "usage": "[options] <gateway-name> <name>",
                  "filePath": "commands/asm/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": "-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 backend address pool"
                    },
                    {
                      "flags": "-r, --servers <servers>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--servers",
                      "description": "comma separated list of IP addresses or DNS names\n     corresponding to backend servers"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "remove",
                  "description": "Remove a backend address pool from an Application Gateway",
                  "fullName": "network application-gateway address-pool remove",
                  "usage": "[options] <gateway-name> <name>",
                  "filePath": "commands/asm/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": "-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 backend address pool"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for unregister confirmation"
                    },
                    {
                      "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 Application Gateway http settings",
              "fullName": "network application-gateway http-settings",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "add",
                  "description": "Add a backend address pool to an Application Gateway",
                  "fullName": "network application-gateway http-settings add",
                  "usage": "[options] <gateway-name> <name>",
                  "filePath": "commands/asm/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": "-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 HTTP settings"
                    },
                    {
                      "flags": "-p, --protocol <protocol>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--protocol",
                      "description": "the protocol, valid value is [Http]"
                    },
                    {
                      "flags": "-o, --port <port>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--port",
                      "description": "the port, valid range is [0-65535]"
                    },
                    {
                      "flags": "-c, --cookie-based-affinity <cookie-based-affinity>",
                      "required": -29,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--cookie-based-affinity",
                      "description": "Enable or disable cookie based affinity, valid values are\n     [Disabled,Enabled],\n     default value is Disabled"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "remove",
                  "description": "Remove a backend address pool to an Application Gateway",
                  "fullName": "network application-gateway http-settings remove",
                  "usage": "[options] <gateway-name> <name>",
                  "filePath": "commands/asm/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": "-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 HTTP settings"
                    },
                    {
                      "flags": "-q, --quiet",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-q",
                      "long": "--quiet",
                      "description": "quiet mode, do not ask for unregister confirmation"
                    },
                    {
                      "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 Application Gateway frontend ip",
              "fullName": "network application-gateway frontend-ip",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "add",
                  "description": "Add a frontend ip configuration to an Application Gateway",
                  "fullName": "network application-gateway frontend-ip add",
                  "usage": "[options] <gateway-name> <name>",
                  "filePath": "commands/asm/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": "-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 frontend IP configuration"
                    },
                    {
                      "flags": "-t, --type <type>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--type",
                      "description": "the type, supported values are [Private], default value is Private"
                    },
                    {
                      "flags": "-i, --static-ip-address <static-ip-address>",
                      "required": -25,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--static-ip-address",
                      "description": "the static IP address"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "remove",
                  "description": "Remove a frontend ip configuration from an Application Gateway",
                  "fullName": "network application-gateway frontend-ip remove",
                  "usage": "[options] <gateway-name> <name>",
                  "filePath": "commands/asm/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": "-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 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"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "frontend-port": {
              "name": "frontend-port",
              "description": "Commands to manage Application Gateway frontend port",
              "fullName": "network application-gateway frontend-port",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "add",
                  "description": "Add a frontend port to an Application Gateway",
                  "fullName": "network application-gateway frontend-port add",
                  "usage": "[options] <gateway-name> <name> <port>",
                  "filePath": "commands/asm/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": "-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 frontend port"
                    },
                    {
                      "flags": "-o, --port <port>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--port",
                      "description": "the port"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "remove",
                  "description": "Remove a frontend port from an Application Gateway",
                  "fullName": "network application-gateway frontend-port remove",
                  "usage": "[options] <gateway-name> <name>",
                  "filePath": "commands/asm/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": "-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 frontend port"
                    },
                    {
                      "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": {}
            },
            "http-listener": {
              "name": "http-listener",
              "description": "Commands to manage Application Gateway http listener",
              "fullName": "network application-gateway http-listener",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "add",
                  "description": "Add a http listener to an Application Gateway",
                  "fullName": "network application-gateway http-listener add",
                  "usage": "[options] <gateway-name> <name> <frontend-port-name>",
                  "filePath": "commands/asm/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": "-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 HTTP listener"
                    },
                    {
                      "flags": "-i, --frontend-ip-name <frontend-ip-name>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--frontend-ip-name",
                      "description": "the name of an existing frontend ip configuration"
                    },
                    {
                      "flags": "-p, --frontend-port-name <frontend-port-name>",
                      "required": -26,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--frontend-port-name",
                      "description": "the name of an existing frontend port"
                    },
                    {
                      "flags": "-t, --protocol <protocol>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--protocol",
                      "description": "the protocol, supported values are [Http, Https], default is Http"
                    },
                    {
                      "flags": "-c, --ssl-cert <ssl-cert>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--ssl-cert",
                      "description": "the name of an existing SSL certificate, this parameter is required when --protocol is Https"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "remove",
                  "description": "Remove a http listener from an Application Gateway",
                  "fullName": "network application-gateway http-listener remove",
                  "usage": "[options] <gateway-name> <name>",
                  "filePath": "commands/asm/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": "-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 HTTP listener"
                    },
                    {
                      "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": {}
            },
            "lb-rule": {
              "name": "lb-rule",
              "description": "Commands to manage Application Gateway load balancing rule",
              "fullName": "network application-gateway lb-rule",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "add",
                  "description": "Add a load balancing rule to an Application Gateway",
                  "fullName": "network application-gateway lb-rule add",
                  "usage": "[options] <gateway-name> <name> <http-settings> <http-listener> <address-pool>",
                  "filePath": "commands/asm/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": "-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 load balancing rule"
                    },
                    {
                      "flags": "-i, --http-settings <http-settings>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-i",
                      "long": "--http-settings",
                      "description": "the name of an existing backend HTTP settings"
                    },
                    {
                      "flags": "-l, --http-listener <http-listener>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-l",
                      "long": "--http-listener",
                      "description": "the name of an existing HTTP listener"
                    },
                    {
                      "flags": "-p, --address-pool <address-pool>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--address-pool",
                      "description": "the name of an existing backend address pool"
                    },
                    {
                      "flags": "-t, --type <type>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--type",
                      "description": "the type, default is \"Basic\""
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "remove",
                  "description": "Remove a load balancing rule from an Application Gateway",
                  "fullName": "network application-gateway lb-rule remove",
                  "usage": "[options] <gateway-name> <name>",
                  "filePath": "commands/asm/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": "-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 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"
                    }
                  ]
                }
              ],
              "categories": {}
            },
            "ssl-cert": {
              "name": "ssl-cert",
              "description": "Commands to manage Application Gateway SSL certificates",
              "fullName": "network application-gateway ssl-cert",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "add",
                  "description": "Add Application Gateway SSL certificate",
                  "fullName": "network application-gateway ssl-cert add",
                  "usage": "[options] <name> <cert-name>",
                  "filePath": "commands/asm/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 Application Gateway"
                    },
                    {
                      "flags": "-c, --cert-name <cert-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--cert-name",
                      "description": "the name of the certificate"
                    },
                    {
                      "flags": "-t, --cert-file <cert-file>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--cert-file",
                      "description": "the path to the certificate"
                    },
                    {
                      "flags": "-p, --password <password>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--password",
                      "description": "the certificate password"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "remove",
                  "description": "Remove Application Gateway SSL certificate",
                  "fullName": "network application-gateway ssl-cert remove",
                  "usage": "[options] <name> <cert-name>",
                  "filePath": "commands/asm/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 Application Gateway"
                    },
                    {
                      "flags": "-c, --cert-name <cert-name>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-c",
                      "long": "--cert-name",
                      "description": "the name of the 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": {}
            }
          }
        },
        "traffic-manager": {
          "name": "traffic-manager",
          "description": "Commands to manage Traffic Manager",
          "fullName": "network traffic-manager",
          "usage": "[options]",
          "options": [],
          "commands": [],
          "categories": {
            "profile": {
              "name": "profile",
              "description": "Commands to manage Traffic Manager profile",
              "fullName": "network traffic-manager profile",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create a Traffic Manager profile",
                  "fullName": "network traffic-manager profile create",
                  "usage": "[options] <name>",
                  "filePath": "commands/asm/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 Traffic Manager profile"
                    },
                    {
                      "flags": "-d, --domain-name <domain-name>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--domain-name",
                      "description": "the profile DNS name\n   Example: foobar.trafficmanager.net"
                    },
                    {
                      "flags": "-m, --load-balancing-method <load-balancing-method>",
                      "required": -29,
                      "optional": 0,
                      "bool": true,
                      "short": "-m",
                      "long": "--load-balancing-method",
                      "description": "the load balancing method to use to distribute connection.\n   Valid values are [performance,failover,roundrobin]"
                    },
                    {
                      "flags": "-o, --monitor-port <monitor-port>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--monitor-port",
                      "description": "the port used to monitor endpoint health.\n   Valid range is [1-65535] inclusive"
                    },
                    {
                      "flags": "-p, --monitor-protocol <monitor-protocol>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--monitor-protocol",
                      "description": "the protocol to use to monitor endpoint health.\n   Valid values are [http,https]"
                    },
                    {
                      "flags": "-r, --monitor-relative-path <monitor-relative-path>",
                      "required": -29,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--monitor-relative-path",
                      "description": "the path relative to the endpoint domain name to probe for health state. Must start with a forward slash \"/\"."
                    },
                    {
                      "flags": "-t, --ttl <ttl>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--ttl",
                      "description": "the DNS Time-to-Live (TTL) that informs the Local DNS resolvers how long to cache DNS entries"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "set",
                  "description": "Set a Traffic Manager profile",
                  "fullName": "network traffic-manager profile set",
                  "usage": "[options] <name>",
                  "filePath": "commands/asm/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 Traffic Manager profile"
                    },
                    {
                      "flags": "-m, --load-balancing-method <load-balancing-method>",
                      "required": -29,
                      "optional": 0,
                      "bool": true,
                      "short": "-m",
                      "long": "--load-balancing-method",
                      "description": "the load balancing method to use to distribute connection.\n   Valid values are [performance,failover,roundrobin]"
                    },
                    {
                      "flags": "-o, --monitor-port <monitor-port>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--monitor-port",
                      "description": "the port used to monitor endpoint health.\n   Valid range is [1-65535] inclusive"
                    },
                    {
                      "flags": "-p, --monitor-protocol <monitor-protocol>",
                      "required": -24,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--monitor-protocol",
                      "description": "the protocol to use to monitor endpoint health.\n   Valid values are [http,https]"
                    },
                    {
                      "flags": "-r, --monitor-relative-path <monitor-relative-path>",
                      "required": -29,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--monitor-relative-path",
                      "description": "the path relative to the endpoint domain name to probe for health state. Must start with a forward slash \"/\"."
                    },
                    {
                      "flags": "-t, --ttl <ttl>",
                      "required": -11,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--ttl",
                      "description": "the DNS Time-to-Live (TTL) that informs the Local DNS resolvers how long to cache DNS entries"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "show",
                  "description": "Get a Traffic Manager profile",
                  "fullName": "network traffic-manager profile show",
                  "usage": "[options] <name>",
                  "filePath": "commands/asm/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 Traffic Manager profile"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "Get all Traffic Manager profiles",
                  "fullName": "network traffic-manager profile list",
                  "usage": "[options]",
                  "filePath": "commands/asm/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"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete a Traffic Manager profile",
                  "fullName": "network traffic-manager profile delete",
                  "usage": "[options] <name>",
                  "filePath": "commands/asm/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 Traffic Manager"
                    },
                    {
                      "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": "enable",
                  "description": "Enable a Traffic Manager profile",
                  "fullName": "network traffic-manager profile enable",
                  "usage": "[options] <name>",
                  "filePath": "commands/asm/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 Traffic Manager"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                },
                {
                  "name": "disable",
                  "description": "Disable a Traffic Manager profile",
                  "fullName": "network traffic-manager profile disable",
                  "usage": "[options] <name>",
                  "filePath": "commands/asm/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 Traffic Manager"
                    },
                    {
                      "flags": "-s, --subscription <subscription>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription identifier"
                    }
                  ]
                }
              ],
              "categories": {
                "endpoint": {
                  "name": "endpoint",
                  "description": "Commands to manage Traffic Manager profile endpoint",
                  "fullName": "network traffic-manager profile endpoint",
                  "usage": "[options] [command]",
                  "options": [],
                  "commands": [
                    {
                      "name": "create",
                      "description": "Create an endpoint in a Traffic Manager profile",
                      "fullName": "network traffic-manager profile endpoint create",
                      "usage": "[options] <profile-name> <name> <type>",
                      "filePath": "commands/asm/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": "-p, --profile-name <profile-name>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-p",
                          "long": "--profile-name",
                          "description": "the name of the profile"
                        },
                        {
                          "flags": "-n, --name <name>",
                          "required": -12,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--name",
                          "description": "the endpoint domain name"
                        },
                        {
                          "flags": "-y, --type <type>",
                          "required": -12,
                          "optional": 0,
                          "bool": true,
                          "short": "-y",
                          "long": "--type",
                          "description": "the endpoint type, valid values are: TrafficManager,CloudService,AzureWebsite,Any"
                        },
                        {
                          "flags": "-l, --endpoint-location <endpoint-location>",
                          "required": -25,
                          "optional": 0,
                          "bool": true,
                          "short": "-l",
                          "long": "--endpoint-location",
                          "description": "the location of the endpoint. Required when profile load-balancing\n     method is set to Performance and endpoint type is set to \n     Any or TrafficManager. Specifies the name of the Azure region"
                        },
                        {
                          "flags": "-u, --endpoint-status <endpoint-status>",
                          "required": -23,
                          "optional": 0,
                          "bool": true,
                          "short": "-u",
                          "long": "--endpoint-status",
                          "description": "the endpoint status, valid values are: Enabled,Disabled Default is Enabled"
                        },
                        {
                          "flags": "-w, --weight <weight>",
                          "required": -14,
                          "optional": 0,
                          "bool": true,
                          "short": "-w",
                          "long": "--weight",
                          "description": "the endpoint weight used in the load balancing algorithm"
                        },
                        {
                          "flags": "-e, --min-child-endpoint <min-child-endpoint>",
                          "required": -26,
                          "optional": 0,
                          "bool": true,
                          "short": "-e",
                          "long": "--min-child-endpoint",
                          "description": "the minimum number of child endpoints, can be specified when Type is set to TrafficManager"
                        },
                        {
                          "flags": "-s, --subscription <subscription>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    },
                    {
                      "name": "set",
                      "description": "Set an endpoint in a Traffic Manager profile",
                      "fullName": "network traffic-manager profile endpoint set",
                      "usage": "[options] <profile-name> <name>",
                      "filePath": "commands/asm/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": "-p, --profile-name <profile-name>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-p",
                          "long": "--profile-name",
                          "description": "the name of the profile"
                        },
                        {
                          "flags": "-n, --name <name>",
                          "required": -12,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--name",
                          "description": "the endpoint domain name"
                        },
                        {
                          "flags": "-y, --type <type>",
                          "required": -12,
                          "optional": 0,
                          "bool": true,
                          "short": "-y",
                          "long": "--type",
                          "description": "the endpoint type, valid values are: TrafficManager,CloudService,AzureWebsite,Any"
                        },
                        {
                          "flags": "-l, --endpoint-location <endpoint-location>",
                          "required": -25,
                          "optional": 0,
                          "bool": true,
                          "short": "-l",
                          "long": "--endpoint-location",
                          "description": "the location of the endpoint. Required when profile load-balancing\n     method is set to Performance and endpoint type is set to \n     Any or TrafficManager. Specifies the name of the Azure region"
                        },
                        {
                          "flags": "-u, --endpoint-status <endpoint-status>",
                          "required": -23,
                          "optional": 0,
                          "bool": true,
                          "short": "-u",
                          "long": "--endpoint-status",
                          "description": "the endpoint status, valid values are: Enabled,Disabled Default is Enabled"
                        },
                        {
                          "flags": "-w, --weight <weight>",
                          "required": -14,
                          "optional": 0,
                          "bool": true,
                          "short": "-w",
                          "long": "--weight",
                          "description": "the endpoint weight used in the load balancing algorithm"
                        },
                        {
                          "flags": "-e, --min-child-endpoint <min-child-endpoint>",
                          "required": -26,
                          "optional": 0,
                          "bool": true,
                          "short": "-e",
                          "long": "--min-child-endpoint",
                          "description": "the minimum number of child endpoints, can be specified when Type is set to TrafficManager"
                        },
                        {
                          "flags": "-s, --subscription <subscription>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-s",
                          "long": "--subscription",
                          "description": "the subscription identifier"
                        }
                      ]
                    },
                    {
                      "name": "delete",
                      "description": "Delete an endpoint from a Traffic Manager profile",
                      "fullName": "network traffic-manager profile endpoint delete",
                      "usage": "[options] <profile-name> <name>",
                      "filePath": "commands/asm/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": "-p, --profile-name <profile-name>",
                          "required": -20,
                          "optional": 0,
                          "bool": true,
                          "short": "-p",
                          "long": "--profile-name",
                          "description": "the name of the profile"
                        },
                        {
                          "flags": "-n, --name <name>",
                          "required": -12,
                          "optional": 0,
                          "bool": true,
                          "short": "-n",
                          "long": "--name",
                          "description": "the endpoint domain 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"
                        }
                      ]
                    }
                  ],
                  "categories": {}
                }
              }
            }
          }
        }
      }
    },
    "sb": {
      "name": "sb",
      "description": "Commands to manage your Service Bus configuration",
      "fullName": "sb",
      "usage": "[options]",
      "options": [],
      "commands": [],
      "categories": {
        "namespace": {
          "name": "namespace",
          "description": "Commands to manage your Service Bus namespaces",
          "fullName": "sb namespace",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List currently defined service bus namespaces",
              "fullName": "sb namespace list",
              "usage": "[options]",
              "filePath": "commands/asm/sb.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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"
                }
              ]
            },
            {
              "name": "show",
              "description": "Get detailed information about a single service bus namespace",
              "fullName": "sb namespace show",
              "usage": "[options] [name]",
              "filePath": "commands/asm/sb.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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"
                }
              ]
            },
            {
              "name": "check",
              "description": "Check that a service bus namespace is legal and available",
              "fullName": "sb namespace check",
              "usage": "[options] <name>",
              "filePath": "commands/asm/sb.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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"
                }
              ]
            },
            {
              "name": "create",
              "description": "Create a service bus namespace",
              "fullName": "sb namespace create",
              "usage": "[options] <namespace> <region>",
              "filePath": "commands/asm/sb.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--namespace",
                  "description": "the namespace name"
                },
                {
                  "flags": "-r, --region <region>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--region",
                  "description": "the region to create the namespace in"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a service bus namespace",
              "fullName": "sb namespace delete",
              "usage": "[options] [namespace]",
              "filePath": "commands/asm/sb.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--namespace",
                  "description": "the namespace 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"
                }
              ]
            }
          ],
          "categories": {
            "location": {
              "name": "location",
              "description": "Commands to manage your Service Bus locations",
              "fullName": "sb namespace location",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "Show list of available service bus locations",
                  "fullName": "sb namespace location list",
                  "usage": "[options]",
                  "filePath": "commands/asm/sb.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": 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": {}
            }
          }
        }
      }
    },
    "site": {
      "name": "site",
      "description": "Commands to manage your Web Sites",
      "fullName": "site",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "list",
          "description": "List your web sites",
          "fullName": "site list",
          "usage": "[options] [name]",
          "filePath": "commands/asm/site.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": 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"
            }
          ]
        },
        {
          "name": "set",
          "description": "Set configuration options for your web site [name]",
          "fullName": "site set",
          "usage": "[options] [name]",
          "filePath": "commands/asm/site.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "--slot <slot>",
              "required": -8,
              "optional": 0,
              "bool": true,
              "long": "--slot",
              "description": "the name of the slot"
            },
            {
              "flags": "--net-version <net-version>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "long": "--net-version",
              "description": "the .NET version. Valid options are v3.5 and v4.5"
            },
            {
              "flags": "--php-version <php-version>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "long": "--php-version",
              "description": "the PHP version. Valid options are off, v5.4, v5.5 and v5.6"
            },
            {
              "flags": "--platform <platform>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "long": "--platform",
              "description": "the platform. Valid options are x86 and x64"
            },
            {
              "flags": "-w, --web-socket",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-w",
              "long": "--web-socket",
              "description": "use this flag to enable web sockets"
            },
            {
              "flags": "-W, --disable-web-socket",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-W",
              "long": "--disable-web-socket",
              "description": "use this flag to disable web sockets"
            },
            {
              "flags": "-r, --remote-debugging",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-r",
              "long": "--remote-debugging",
              "description": "use this flag to enable remote debugging"
            },
            {
              "flags": "-R, --disable-remote-debugging",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-R",
              "long": "--disable-remote-debugging",
              "description": "use this flag to disable remote debugging"
            },
            {
              "flags": "-d, --remote-debugging-version <remote-debugging-version>",
              "required": -32,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--remote-debugging-version",
              "description": "the version of remote debugging. It's either VS2012 or VS2013. This parameter is only valid when remote debugging is on."
            },
            {
              "flags": "-m, --managed-pipeline-mode <managed-pipeline-mode>",
              "required": -29,
              "optional": 0,
              "bool": true,
              "short": "-m",
              "long": "--managed-pipeline-mode",
              "description": "the mode for managed pipeline. valid values are Classic and Integrated."
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            }
          ]
        },
        {
          "name": "deploymentscript",
          "description": "Generate custom deployment script",
          "fullName": "site deploymentscript",
          "usage": "[options]",
          "filePath": "commands/asm/site.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": 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, --repositoryRoot [dir path]",
              "required": 0,
              "optional": -22,
              "bool": true,
              "short": "-r",
              "long": "--repositoryRoot",
              "description": "The root path for the repository (default: .)"
            },
            {
              "flags": "--aspWAP <projectFilePath>",
              "required": -10,
              "optional": 0,
              "bool": true,
              "long": "--aspWAP",
              "description": "Create a deployment script for .NET web application, specify the project file path"
            },
            {
              "flags": "--aspNet5 <projectFilePath>",
              "required": -11,
              "optional": 0,
              "bool": true,
              "long": "--aspNet5",
              "description": "Create a deployment script for ASP.NET 5 web application, specify the project.json file path"
            },
            {
              "flags": "--aspWebSite",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--aspWebSite",
              "description": "Create a deployment script for basic website"
            },
            {
              "flags": "--go",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--go",
              "description": "Create a deployment script for Go website"
            },
            {
              "flags": "--node",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--node",
              "description": "Create a deployment script for node.js website"
            },
            {
              "flags": "--php",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--php",
              "description": "Create a deployment script for php website"
            },
            {
              "flags": "--python",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--python",
              "description": "Create a deployment script for python website"
            },
            {
              "flags": "--basic",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--basic",
              "description": "Create a deployment script for any other website"
            },
            {
              "flags": "--dotNetConsole <projectFilePath>",
              "required": -17,
              "optional": 0,
              "bool": true,
              "long": "--dotNetConsole",
              "description": "Create a deployment script for .NET console application, specify the project file path"
            },
            {
              "flags": "-s, --solutionFile [file path]",
              "required": 0,
              "optional": -20,
              "bool": true,
              "short": "-s",
              "long": "--solutionFile",
              "description": "The solution file path (sln)"
            },
            {
              "flags": "-p, --sitePath [directory path]",
              "required": 0,
              "optional": -16,
              "bool": true,
              "short": "-p",
              "long": "--sitePath",
              "description": "The path to the site being deployed (default: same as repositoryRoot)"
            },
            {
              "flags": "-t, --scriptType [batch|bash|posh]",
              "required": 0,
              "optional": -18,
              "bool": true,
              "short": "-t",
              "long": "--scriptType",
              "description": "The script output type (default: batch)"
            },
            {
              "flags": "-o, --outputPath <output path>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-o",
              "long": "--outputPath",
              "description": "The path to output generated script (default: same as repository root)"
            },
            {
              "flags": "-y, --suppressPrompt",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-y",
              "long": "--suppressPrompt",
              "description": "Suppresses prompting to confirm you want to overwrite an existing destination file."
            },
            {
              "flags": "--no-dot-deployment",
              "required": 0,
              "optional": 0,
              "bool": false,
              "long": "--no-dot-deployment",
              "description": "Do not generate the .deployment file."
            },
            {
              "flags": "--no-solution",
              "required": 0,
              "optional": 0,
              "bool": false,
              "long": "--no-solution",
              "description": "Do not require a solution file path (only for --aspWAP otherwise ignored)."
            },
            {
              "flags": "--aspNet5Version <version>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "long": "--aspNet5Version",
              "description": "The Dnx version for ASP.NET 5"
            },
            {
              "flags": "--aspNet5Runtime <runtime>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "long": "--aspNet5Runtime",
              "description": "The .NET runtime (clr vs coreclr) for ASP.NET 5"
            },
            {
              "flags": "--aspNet5Architecture <architecture>",
              "required": -23,
              "optional": 0,
              "bool": true,
              "long": "--aspNet5Architecture",
              "description": "The architecture (x64 vs x86) for ASP.NET 5"
            },
            {
              "flags": "--dnxConsoleApp <projectDirectory>",
              "required": -17,
              "optional": 0,
              "bool": true,
              "long": "--dnxConsoleApp",
              "description": "Creates a deployment script for a DNX base console app as a webjob"
            }
          ]
        },
        {
          "name": "create",
          "description": "Create a web site",
          "fullName": "site create",
          "usage": "[options] [name]",
          "filePath": "commands/asm/site.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": 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": "the geographic region to create the website"
            },
            {
              "flags": "--hostname <hostname>",
              "required": -12,
              "optional": 0,
              "bool": true,
              "long": "--hostname",
              "description": "the custom host name to use"
            },
            {
              "flags": "--slot <slot>",
              "required": -8,
              "optional": 0,
              "bool": true,
              "long": "--slot",
              "description": "the name of the slot"
            },
            {
              "flags": "--git",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--git",
              "description": "Configure git on web site and local folder"
            },
            {
              "flags": "--gitusername <gitusername>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "long": "--gitusername",
              "description": "the publishing username for git"
            },
            {
              "flags": "--github",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--github",
              "description": "Configure github on web site and local folder"
            },
            {
              "flags": "--githubusername <username>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "long": "--githubusername",
              "description": "the github username"
            },
            {
              "flags": "--githubpassword <password>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "long": "--githubpassword",
              "description": "the github password"
            },
            {
              "flags": "--githubrepository <repository>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "long": "--githubrepository",
              "description": "the github repository full name (i.e. user/repository)"
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            }
          ]
        },
        {
          "name": "browse",
          "description": "Open your web site in a browser",
          "fullName": "site browse",
          "usage": "[options] [name]",
          "filePath": "commands/asm/site.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "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": "show",
          "description": "Show details for a web site",
          "fullName": "site show",
          "usage": "[options] [name]",
          "filePath": "commands/asm/site.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": 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 site details"
            },
            {
              "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 web site",
          "fullName": "site delete",
          "usage": "[options] [name]",
          "filePath": "commands/asm/site.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-q, --quiet",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-q",
              "long": "--quiet",
              "description": "quiet mode, do not ask for delete confirmation"
            },
            {
              "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": "swap",
          "description": "Swap two web site slots",
          "fullName": "site swap",
          "usage": "[options] <name> [slot1] [slot2]",
          "filePath": "commands/asm/site.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "flags": "-q, --quiet",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-q",
              "long": "--quiet",
              "description": "quiet mode, do not ask for swap confirmation"
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            }
          ]
        },
        {
          "name": "start",
          "description": "Start a web site",
          "fullName": "site start",
          "usage": "[options] [name]",
          "filePath": "commands/asm/site.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "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": "stop",
          "description": "Stop a web site",
          "fullName": "site stop",
          "usage": "[options] [name]",
          "filePath": "commands/asm/site.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "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 site",
          "fullName": "site restart",
          "usage": "[options] [name]",
          "filePath": "commands/asm/site.js",
          "options": [
            {
              "flags": "-v, --verbose",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-v",
              "long": "--verbose",
              "description": "use verbose output"
            },
            {
              "flags": "-vv",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "-vv",
              "description": "more verbose with debug output"
            },
            {
              "flags": "--json",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--json",
              "description": "use json output"
            },
            {
              "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"
            }
          ]
        }
      ],
      "categories": {
        "appsetting": {
          "name": "appsetting",
          "description": "Commands to manage your Web Site application settings",
          "fullName": "site appsetting",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "Show your site application settings",
              "fullName": "site appsetting list",
              "usage": "[options] [name]",
              "filePath": "commands/asm/site.appsetting.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "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": "add",
              "description": "Add an application setting for your site (for values containing the character ';', use quotes in the format of \"\\\"value\\\"\". e.g. SB_CONN=\"\\\"Endpoint=sb://namespace.servicebus.windows.net/;SharedSecretIssuer=owner\"\\\")",
              "fullName": "site appsetting add",
              "usage": "[options] <keyvaluepair> [name]",
              "filePath": "commands/asm/site.appsetting.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "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 an application setting for your site",
              "fullName": "site appsetting delete",
              "usage": "[options] <key> [name]",
              "filePath": "commands/asm/site.appsetting.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--slot <slot>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--slot",
                  "description": "the name of the slot"
                },
                {
                  "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 an application setting for your site",
              "fullName": "site appsetting show",
              "usage": "[options] <key> [name]",
              "filePath": "commands/asm/site.appsetting.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "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"
                }
              ]
            }
          ],
          "categories": {}
        },
        "config": {
          "name": "config",
          "description": "Commands to manage your Web Site configurations (deprecated. This command is deprecated and will be removed in a future version. Please use \"site appsetting\" instead",
          "fullName": "site config",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "Show your site application settings (deprecated. This command is deprecated and will be removed in a future version. Please use \"site appsetting\" instead",
              "fullName": "site config list",
              "usage": "[options] [name]",
              "filePath": "commands/asm/site.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": "--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": "add",
              "description": "Add an application setting for your site (for values containing the character ';', use quotes in the format of \"\\\"value\\\"\". e.g. SB_CONN=\"\\\"Endpoint=sb://namespace.servicebus.windows.net/;SharedSecretIssuer=owner\"\\\") (deprecated. This command is deprecated and will be removed in a future version. Please use \"site appsetting\" instead",
              "fullName": "site config add",
              "usage": "[options] <keyvaluepair> [name]",
              "filePath": "commands/asm/site.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": "--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": "clear",
              "description": "Clear an application setting for your site (deprecated. This command is deprecated and will be removed in a future version. Please use \"site appsetting\" instead",
              "fullName": "site config clear",
              "usage": "[options] <key> [name]",
              "filePath": "commands/asm/site.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": "--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": "get",
              "description": "Get an application setting for your site (deprecated. This command is deprecated and will be removed in a future version. Please use \"site appsetting\" instead",
              "fullName": "site config get",
              "usage": "[options] <key> [name]",
              "filePath": "commands/asm/site.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": "--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"
                }
              ]
            }
          ],
          "categories": {}
        },
        "connectionstring": {
          "name": "connectionstring",
          "description": "Commands to manage your Web Site connection strings",
          "fullName": "site connectionstring",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "Show your site application settings",
              "fullName": "site connectionstring list",
              "usage": "[options] [name]",
              "filePath": "commands/asm/site.connectionstring.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "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": "add",
              "description": "Add a connection string to your site",
              "fullName": "site connectionstring add",
              "usage": "[options] <connectionname> <value> <type> [name]",
              "filePath": "commands/asm/site.connectionstring.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--slot <slot>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--slot",
                  "description": "the name of the slot"
                },
                {
                  "flags": "-c, --connectionname <connectionname>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connectionname",
                  "description": "the connection string name"
                },
                {
                  "flags": "-v, --value <value>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--value",
                  "description": "the connection string value"
                },
                {
                  "flags": "-t, --type <type>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--type",
                  "description": "the connection string type"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a connection string for your site",
              "fullName": "site connectionstring delete",
              "usage": "[options] <connectionname> [name]",
              "filePath": "commands/asm/site.connectionstring.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--slot <slot>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--slot",
                  "description": "the name of the slot"
                },
                {
                  "flags": "-c, --connectionname <connectionname>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connectionname",
                  "description": "the connection string 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 a connection string for your site",
              "fullName": "site connectionstring show",
              "usage": "[options] <connectionname> [name]",
              "filePath": "commands/asm/site.connectionstring.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--slot <slot>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--slot",
                  "description": "the name of the slot"
                },
                {
                  "flags": "-c, --connectionname <connectionname>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connectionname",
                  "description": "the connection string name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            }
          ],
          "categories": {}
        },
        "defaultdocument": {
          "name": "defaultdocument",
          "description": "Commands to manage your Web Site default documents",
          "fullName": "site defaultdocument",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "Show your site default documents",
              "fullName": "site defaultdocument list",
              "usage": "[options] [name]",
              "filePath": "commands/asm/site.defaultdocument.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "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": "add",
              "description": "Add a site default document (by default, to the end of the list)",
              "fullName": "site defaultdocument add",
              "usage": "[options] <document> [name]",
              "filePath": "commands/asm/site.defaultdocument.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--slot <slot>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--slot",
                  "description": "the name of the slot"
                },
                {
                  "flags": "-d, --document <document>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--document",
                  "description": "the new default document"
                },
                {
                  "flags": "-p, --position <position>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--position",
                  "description": "the position of the new default document"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a site default document",
              "fullName": "site defaultdocument delete",
              "usage": "[options] <document> [name]",
              "filePath": "commands/asm/site.defaultdocument.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--slot <slot>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--slot",
                  "description": "the name of the slot"
                },
                {
                  "flags": "-d, --document <document>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--document",
                  "description": "the new default document"
                },
                {
                  "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"
                }
              ]
            }
          ],
          "categories": {}
        },
        "deployment": {
          "name": "deployment",
          "description": "Commands to manage your Web Site deployments",
          "fullName": "site deployment",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List your git deployments",
              "fullName": "site deployment list",
              "usage": "[options] [name]",
              "filePath": "commands/asm/site.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": "--slot <slot>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--slot",
                  "description": "the name of the slot"
                },
                {
                  "flags": "-m, --max <count>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--max",
                  "description": "Limit the maximum number of results"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show your git deployment",
              "fullName": "site deployment show",
              "usage": "[options] <commitId> [name]",
              "filePath": "commands/asm/site.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": "--slot <slot>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--slot",
                  "description": "the name of the slot"
                },
                {
                  "flags": "-d, --details",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--details",
                  "description": "Display log details"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "redeploy",
              "description": "Redeploy your git deployment",
              "fullName": "site deployment redeploy",
              "usage": "[options] <commitId> [name]",
              "filePath": "commands/asm/site.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": "--slot <slot>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--slot",
                  "description": "the name of the slot"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode, do not ask for redeploy confirmation"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "github",
              "description": "Link a website to a github account for deployment",
              "fullName": "site deployment github",
              "usage": "[options] [name]",
              "filePath": "commands/asm/site.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": "--slot <slot>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--slot",
                  "description": "the name of the slot"
                },
                {
                  "flags": "--githubusername <username>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--githubusername",
                  "description": "the github username"
                },
                {
                  "flags": "--githubpassword <password>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--githubpassword",
                  "description": "the github password"
                },
                {
                  "flags": "--githubrepository <repository>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "long": "--githubrepository",
                  "description": "the github repository full name (i.e. user/repository)"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            }
          ],
          "categories": {
            "user": {
              "name": "user",
              "description": "Commands to manage your Web Site deployment users",
              "fullName": "site deployment user",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "set",
                  "description": "Set the deployment credentials",
                  "fullName": "site deployment user set",
                  "usage": "[options] [username] [pass]",
                  "filePath": "commands/asm/site.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": "-u, --username <gitUsername>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-u",
                      "long": "--username",
                      "description": "the new git username"
                    },
                    {
                      "flags": "-p, --pass <gitPassword>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "short": "-p",
                      "long": "--pass",
                      "description": "the new git password"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "domain": {
          "name": "domain",
          "description": "Commands to manage your Web Site domains",
          "fullName": "site domain",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "Show your site domains",
              "fullName": "site domain list",
              "usage": "[options] [name]",
              "filePath": "commands/asm/site.domain.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "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": "add",
              "description": "Add a site domain",
              "fullName": "site domain add",
              "usage": "[options] <dn> [name]",
              "filePath": "commands/asm/site.domain.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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, --dn <dn>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dn",
                  "description": "the new domain name"
                },
                {
                  "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 site domain",
              "fullName": "site domain delete",
              "usage": "[options] <dn> [name]",
              "filePath": "commands/asm/site.domain.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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, --dn <dn>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dn",
                  "description": "the domain name"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode, do not ask for delete confirmation"
                },
                {
                  "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"
                }
              ]
            }
          ],
          "categories": {}
        },
        "handler": {
          "name": "handler",
          "description": "Commands to manage your Web Site handler mappings",
          "fullName": "site handler",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "Show your site handler mappings documents",
              "fullName": "site handler list",
              "usage": "[options] [name]",
              "filePath": "commands/asm/site.handler.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "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": "add",
              "description": "Add a handler mapping",
              "fullName": "site handler add",
              "usage": "[options] <extension> <processor> [name]",
              "filePath": "commands/asm/site.handler.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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, --extension <extension>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--extension",
                  "description": "the handler mapping extension"
                },
                {
                  "flags": "-p, --processor <processor>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--processor",
                  "description": "the path to the script processor (executable that will process the file given by the extension)"
                },
                {
                  "flags": "-a, --arguments <arguments>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--arguments",
                  "description": "the additional arguments"
                },
                {
                  "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 site handler mapping",
              "fullName": "site handler delete",
              "usage": "[options] <extension> [name]",
              "filePath": "commands/asm/site.handler.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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, --extension <extension>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--extension",
                  "description": "the extension"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode, do not ask for delete confirmation"
                },
                {
                  "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"
                }
              ]
            }
          ],
          "categories": {}
        },
        "job": {
          "name": "job",
          "description": "Commands to manage your Web Site WebJobs",
          "fullName": "site job",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List all the WebJobs under a web site",
              "fullName": "site job list",
              "usage": "[options] [name]",
              "filePath": "commands/asm/site.jobs.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--job-type <job-type>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--job-type",
                  "description": "optional. The type of the webjob. Valid value is \"triggered\" or \"continuous\". By default return webjobs of all types."
                },
                {
                  "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": "show",
              "description": "Show details of a specific webjob",
              "fullName": "site job show",
              "usage": "[options] <jobName> <jobType> [name]",
              "filePath": "commands/asm/site.jobs.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--job-name <job-name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--job-name",
                  "description": "required. The name of the webjob."
                },
                {
                  "flags": "--job-type <job-type>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--job-type",
                  "description": "required. The type of the webjob. Valid value is \"triggered\" or \"continuous\"."
                },
                {
                  "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 WebJob",
              "fullName": "site job delete",
              "usage": "[options] <jobName> <jobType> [name]",
              "filePath": "commands/asm/site.jobs.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--job-name <job-name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--job-name",
                  "description": "required. The name of the webjob."
                },
                {
                  "flags": "--job-type <job-type>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--job-type",
                  "description": "required. The type of the webjob. Valid value is \"triggered\" or \"continuous\"."
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode, do not ask for delete confirmation"
                },
                {
                  "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": "upload",
              "description": "Upload a new WebJob",
              "fullName": "site job upload",
              "usage": "[options] <jobName> <jobType> <jobFile> [name]",
              "filePath": "commands/asm/site.jobs.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--job-name <job-name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--job-name",
                  "description": "required. The name of the webjob."
                },
                {
                  "flags": "--job-type <job-type>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--job-type",
                  "description": "required. The type of the webjob. Valid values are \"triggered\" or \"continuous\"."
                },
                {
                  "flags": "--job-file <job-file>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--job-file",
                  "description": "required. The job file."
                },
                {
                  "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 WebJob",
              "fullName": "site job start",
              "usage": "[options] <jobName> <jobType> [name]",
              "filePath": "commands/asm/site.jobs.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--job-name <job-name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--job-name",
                  "description": "required. The name of the webjob."
                },
                {
                  "flags": "--job-type <job-type>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--job-type",
                  "description": "required. The type of the webjob. Valid value is \"triggered\" or \"continuous\"."
                },
                {
                  "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": "stop",
              "description": "Stops a WebJob. Only continuous jobs can  be stopped",
              "fullName": "site job stop",
              "usage": "[options] <jobName> <jobType> [name]",
              "filePath": "commands/asm/site.jobs.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--job-name <job-name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--job-name",
                  "description": "required. The name of the webjob."
                },
                {
                  "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"
                }
              ]
            }
          ],
          "categories": {
            "history": {
              "name": "history",
              "description": "Commands to manage your Web Site WebJobs History",
              "fullName": "site job history",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "list",
                  "description": "List all the triggered WebJobs runs under a web site",
                  "fullName": "site job history list",
                  "usage": "[options] [jobName] [name]",
                  "filePath": "commands/asm/site.jobs.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--job-name <job-name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--job-name",
                      "description": "required. The name of the webjob."
                    },
                    {
                      "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": "show",
                  "description": "Get the detaisl for a triggered WebJobs run under a web site",
                  "fullName": "site job history show",
                  "usage": "[options] [jobName] [runId] [name]",
                  "filePath": "commands/asm/site.jobs.js",
                  "options": [
                    {
                      "flags": "-v, --verbose",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "short": "-v",
                      "long": "--verbose",
                      "description": "use verbose output"
                    },
                    {
                      "flags": "-vv",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "-vv",
                      "description": "more verbose with debug output"
                    },
                    {
                      "flags": "--json",
                      "required": 0,
                      "optional": 0,
                      "bool": true,
                      "long": "--json",
                      "description": "use json output"
                    },
                    {
                      "flags": "--job-name <job-name>",
                      "required": -12,
                      "optional": 0,
                      "bool": true,
                      "long": "--job-name",
                      "description": "required. The name of the webjob."
                    },
                    {
                      "flags": "--run-id <run-id>",
                      "required": -10,
                      "optional": 0,
                      "bool": true,
                      "long": "--run-id",
                      "description": "optional. The id of the run history. If not specified, show the latest run."
                    },
                    {
                      "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"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "location": {
          "name": "location",
          "description": "Commands to manage your Web Site locations",
          "fullName": "site location",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List locations available for your account",
              "fullName": "site location list",
              "usage": "[options]",
              "filePath": "commands/asm/site.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "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": {}
        },
        "log": {
          "name": "log",
          "description": "Commands to manage your Web Site diagnostics",
          "fullName": "site log",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "download",
              "description": "Download diagnostic log",
              "fullName": "site log download",
              "usage": "[options] [name]",
              "filePath": "commands/asm/site.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": "-o, --output <path>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--output",
                  "description": "the output path, default is local folder"
                },
                {
                  "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": "tail",
              "description": "Live diagnostic log",
              "fullName": "site log tail",
              "usage": "[options] [name]",
              "filePath": "commands/asm/site.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": "-p, --path <path>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--path",
                  "description": "the log path under LogFiles folder"
                },
                {
                  "flags": "-f, --filter <filter>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--filter",
                  "description": "the filter matching line"
                },
                {
                  "flags": "--log",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--log",
                  "description": "indicates to write output as log data"
                },
                {
                  "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": "set",
              "description": "Configure diagnostics",
              "fullName": "site log set",
              "usage": "[options] [name]",
              "filePath": "commands/asm/site.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": "-a, --application",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--application",
                  "description": "use this flag to enable application diagnostics."
                },
                {
                  "flags": "-A, --disable-application",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-A",
                  "long": "--disable-application",
                  "description": "use this flag to disable application diagnostics."
                },
                {
                  "flags": "-w, --web-server-logging",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-w",
                  "long": "--web-server-logging",
                  "description": "use this flag to enable web server logging."
                },
                {
                  "flags": "-W, --disable-web-server-logging",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-W",
                  "long": "--disable-web-server-logging",
                  "description": "use this flag to disable web server logging."
                },
                {
                  "flags": "-e, --detailed-error-messages",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--detailed-error-messages",
                  "description": "use this flag to enable detailed error messages."
                },
                {
                  "flags": "-E, --disable-detailed-error-messages",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-E",
                  "long": "--disable-detailed-error-messages",
                  "description": "use this flag to disable detailed error messages."
                },
                {
                  "flags": "-f, --failed-request-tracing",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--failed-request-tracing",
                  "description": "use this flag to enable failed request tracing."
                },
                {
                  "flags": "-F, --disable-failed-request-tracing",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-F",
                  "long": "--disable-failed-request-tracing",
                  "description": "use this flag to disable failed request tracing."
                },
                {
                  "flags": "-o, --out <out>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--out",
                  "description": "takes file or storage. When -a is specified, use this parameter to specify the output of the log."
                },
                {
                  "flags": "-l, --level <level>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--level",
                  "description": "takes error, warning, verbose or info. When -a is specified, use this parameter to specify the log level. But default is error."
                },
                {
                  "flags": "-t, --storage-account <storage-account>",
                  "required": -23,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--storage-account",
                  "description": "use this parameter to specify the storage account where the log will be stored."
                },
                {
                  "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"
                }
              ]
            }
          ],
          "categories": {}
        },
        "repository": {
          "name": "repository",
          "description": "Commands to manage your Web Site repositories",
          "fullName": "site repository",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "branch",
              "description": "Set your repository branch",
              "fullName": "site repository branch",
              "usage": "[options] <branch> [name]",
              "filePath": "commands/asm/site.repository.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "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 your repository",
              "fullName": "site repository delete",
              "usage": "[options] [name]",
              "filePath": "commands/asm/site.repository.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode, do not ask for delete confirmation"
                },
                {
                  "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": "sync",
              "description": "Sync your repository",
              "fullName": "site repository sync",
              "usage": "[options] [name]",
              "filePath": "commands/asm/site.repository.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "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": "update",
              "description": "Link a website to a github account for deployment",
              "fullName": "site repository update",
              "usage": "[options] [name]",
              "filePath": "commands/asm/site.repository.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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": {}
        },
        "scale": {
          "name": "scale",
          "description": "Commands to manage your Web Site scaling",
          "fullName": "site scale",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "mode",
              "description": "Set the web site mode",
              "fullName": "site scale mode",
              "usage": "[options] <mode> [name]",
              "filePath": "commands/asm/site.scale.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--mode <mode>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--mode",
                  "description": "the mode of the site (available are: free, basic, shared and standard)"
                },
                {
                  "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": "instances",
              "description": "Set the web site number of instances",
              "fullName": "site scale instances",
              "usage": "[options] <instances> [name]",
              "filePath": "commands/asm/site.scale.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--instances <instances>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "long": "--instances",
                  "description": "the number of instances"
                },
                {
                  "flags": "--size <size>",
                  "required": -8,
                  "optional": 0,
                  "bool": true,
                  "long": "--size",
                  "description": "the size of the instances (available are: small, medium and large)"
                },
                {
                  "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"
                }
              ]
            }
          ],
          "categories": {}
        }
      }
    },
    "sql": {
      "name": "sql",
      "description": "Commands to manage your SQL Server accounts",
      "fullName": "sql",
      "usage": "[options]",
      "options": [],
      "commands": [],
      "categories": {
        "server": {
          "name": "server",
          "description": "Commands to manage your SQL Server database servers",
          "fullName": "sql server",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a database server",
              "fullName": "sql server create",
              "usage": "[options] <administratorLogin> <administratorPassword> <location>",
              "filePath": "commands/asm/sql.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--administratorLogin <administratorLogin>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "long": "--administratorLogin",
                  "description": "the new administrator login"
                },
                {
                  "flags": "--administratorPassword <administratorPassword>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "long": "--administratorPassword",
                  "description": "the new administrator password"
                },
                {
                  "flags": "--location <location>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "--defaultFirewallRule",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--defaultFirewallRule",
                  "description": "Add a firewall rule allowing access from Microsoft Azure"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show server details",
              "fullName": "sql server show",
              "usage": "[options] <serverName>",
              "filePath": "commands/asm/sql.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--serverName <serverName>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--serverName",
                  "description": "the SQL Server name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "list",
              "description": "List the servers",
              "fullName": "sql server list",
              "usage": "[options]",
              "filePath": "commands/asm/sql.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": 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"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a server",
              "fullName": "sql server delete",
              "usage": "[options] <serverName>",
              "filePath": "commands/asm/sql.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--serverName <serverName>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--serverName",
                  "description": "the SQL Server 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"
                }
              ]
            }
          ],
          "categories": {}
        },
        "firewallrule": {
          "name": "firewallrule",
          "description": "Commands to manage your SQL Server firewall rules",
          "fullName": "sql firewallrule",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a firewall rule for a SQL Server",
              "fullName": "sql firewallrule create",
              "usage": "[options] <serverName> <ruleName> <startIPAddress> <endIPAddress>",
              "filePath": "commands/asm/sql.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--serverName <serverName>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--serverName",
                  "description": "the SQL Server name"
                },
                {
                  "flags": "--ruleName <ruleName>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--ruleName",
                  "description": "the firewall rule name"
                },
                {
                  "flags": "--startIPAddress <startIPAddress>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "long": "--startIPAddress",
                  "description": "the starting IP address for the firewall rule"
                },
                {
                  "flags": "--endIPAddress <endIPAddress>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--endIPAddress",
                  "description": "the ending IP address for the firewall rule"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show firewall rule details",
              "fullName": "sql firewallrule show",
              "usage": "[options] <serverName> <ruleName>",
              "filePath": "commands/asm/sql.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--serverName <serverName>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--serverName",
                  "description": "the SQL Server name"
                },
                {
                  "flags": "--ruleName <ruleName>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--ruleName",
                  "description": "the firewall rule name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "list",
              "description": "List the firewall rules",
              "fullName": "sql firewallrule list",
              "usage": "[options] <serverName>",
              "filePath": "commands/asm/sql.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--serverName <serverName>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--serverName",
                  "description": "the SQL Server name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a firewall rule",
              "fullName": "sql firewallrule delete",
              "usage": "[options] <serverName> <ruleName>",
              "filePath": "commands/asm/sql.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--serverName <serverName>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--serverName",
                  "description": "the SQL server name"
                },
                {
                  "flags": "--ruleName <ruleName>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--ruleName",
                  "description": "the firewall rule 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"
                }
              ]
            }
          ],
          "categories": {}
        },
        "db": {
          "name": "db",
          "description": "Commands to manage your SQL Server databases",
          "fullName": "sql db",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a database",
              "fullName": "sql db create",
              "usage": "[options] <serverName> <databaseName> <administratorLogin> <administratorPassword> [collationName] [edition] [maxSizeInGB]",
              "filePath": "commands/asm/sql.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--serverName <serverName>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--serverName",
                  "description": "the SQL server name"
                },
                {
                  "flags": "--databaseName <databaseName>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--databaseName",
                  "description": "the database name"
                },
                {
                  "flags": "--administratorLogin <administratorLogin>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "long": "--administratorLogin",
                  "description": "the administrator login"
                },
                {
                  "flags": "--administratorPassword <administratorPassword>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "long": "--administratorPassword",
                  "description": "the administrator password"
                },
                {
                  "flags": "--collationName <collationName>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "long": "--collationName",
                  "description": "the database collation name"
                },
                {
                  "flags": "--edition <edition>",
                  "required": -11,
                  "optional": 0,
                  "bool": true,
                  "long": "--edition",
                  "description": "the database edition"
                },
                {
                  "flags": "--maxSizeInGB <maxSizeInGB>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "long": "--maxSizeInGB",
                  "description": "the database maximum size in GB"
                },
                {
                  "flags": "--location <location>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "list",
              "description": "List the databases",
              "fullName": "sql db list",
              "usage": "[options] <serverName> <administratorLogin> <administratorPassword>",
              "filePath": "commands/asm/sql.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--serverName <serverName>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--serverName",
                  "description": "the SQL server name"
                },
                {
                  "flags": "--administratorLogin <administratorLogin>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "long": "--administratorLogin",
                  "description": "the administrator login"
                },
                {
                  "flags": "--administratorPassword <administratorPassword>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "long": "--administratorPassword",
                  "description": "the administrator password"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "show",
              "description": "Show database details",
              "fullName": "sql db show",
              "usage": "[options] <serverName> <databaseName> <administratorLogin> <administratorPassword>",
              "filePath": "commands/asm/sql.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--serverName <serverName>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--serverName",
                  "description": "the SQL server name"
                },
                {
                  "flags": "--databaseName <databaseName>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--databaseName",
                  "description": "the database name"
                },
                {
                  "flags": "--administratorLogin <administratorLogin>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "long": "--administratorLogin",
                  "description": "the administrator login"
                },
                {
                  "flags": "--administratorPassword <administratorPassword>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "long": "--administratorPassword",
                  "description": "the administrator password"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a database",
              "fullName": "sql db delete",
              "usage": "[options] <serverName> <databaseName> <administratorPassword>",
              "filePath": "commands/asm/sql.js",
              "options": [
                {
                  "flags": "-v, --verbose",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--verbose",
                  "description": "use verbose output"
                },
                {
                  "flags": "-vv",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "-vv",
                  "description": "more verbose with debug output"
                },
                {
                  "flags": "--json",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "long": "--json",
                  "description": "use json output"
                },
                {
                  "flags": "--serverName <serverName>",
                  "required": -14,
                  "optional": 0,
                  "bool": true,
                  "long": "--serverName",
                  "description": "the SQL server name"
                },
                {
                  "flags": "--databaseName <databaseName>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "long": "--databaseName",
                  "description": "the database name"
                },
                {
                  "flags": "--administratorLogin <administratorLogin>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "long": "--administratorLogin",
                  "description": "the administrator login"
                },
                {
                  "flags": "--administratorPassword <administratorPassword>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "long": "--administratorPassword",
                  "description": "the administrator password"
                },
                {
                  "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"
                }
              ]
            }
          ],
          "categories": {}
        }
      }
    },
    "vm": {
      "name": "vm",
      "description": "Commands to manage your Virtual Machines",
      "fullName": "vm",
      "usage": "[options] [command]",
      "options": [],
      "commands": [
        {
          "name": "create",
          "description": "Create a VM",
          "fullName": "vm create",
          "usage": "[options] <dns-name> <image> [userName] [password]",
          "filePath": "commands/asm/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, --userName <userName>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-g",
              "long": "--userName",
              "description": "the user name"
            },
            {
              "flags": "-p, --password <password>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--password",
              "description": "the password"
            },
            {
              "flags": "-o, --community",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-o",
              "long": "--community",
              "description": "the <image> is a community image"
            },
            {
              "flags": "-c, --connect",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-c",
              "long": "--connect",
              "description": "connect to an existing cloud service"
            },
            {
              "flags": "-l, --location <name>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-l",
              "long": "--location",
              "description": "the location"
            },
            {
              "flags": "-a, --affinity-group <name>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-a",
              "long": "--affinity-group",
              "description": "the affinity group"
            },
            {
              "flags": "-u, --blob-url <url>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-u",
              "long": "--blob-url",
              "description": "the blob url for OS disk"
            },
            {
              "flags": "-z, --vm-size <size>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-z",
              "long": "--vm-size",
              "description": "the virtual machine size [Small]"
            },
            {
              "flags": "-n, --vm-name <name>",
              "required": -15,
              "optional": 0,
              "bool": true,
              "short": "-n",
              "long": "--vm-name",
              "description": "the virtual machine name"
            },
            {
              "flags": "-e, --ssh [port]",
              "required": 0,
              "optional": -11,
              "bool": true,
              "short": "-e",
              "long": "--ssh",
              "description": "the ssh port to enable [22]"
            },
            {
              "flags": "-t, --ssh-cert <openssh-rsa-file|pem-file|fingerprint>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--ssh-cert",
              "description": "the SSH certificate"
            },
            {
              "flags": "-P, --no-ssh-password",
              "required": 0,
              "optional": 0,
              "bool": false,
              "short": "-P",
              "long": "--no-ssh-password",
              "description": "indicates that the password should be removed when using --ssh-cert"
            },
            {
              "flags": "-E, --no-ssh-endpoint",
              "required": 0,
              "optional": 0,
              "bool": false,
              "short": "-E",
              "long": "--no-ssh-endpoint",
              "description": "indicates that no public SSH endpoint should be created"
            },
            {
              "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-cert is specified."
            },
            {
              "flags": "-r, --rdp [port]",
              "required": 0,
              "optional": -11,
              "bool": true,
              "short": "-r",
              "long": "--rdp",
              "description": "indicates that RDP should be enabled [3389]"
            },
            {
              "flags": "-w, --virtual-network-name <name>",
              "required": -28,
              "optional": 0,
              "bool": true,
              "short": "-w",
              "long": "--virtual-network-name",
              "description": "the virtual network name"
            },
            {
              "flags": "-b, --subnet-names <list>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-b",
              "long": "--subnet-names",
              "description": "the comma-delimited subnet names"
            },
            {
              "flags": "-i, --public-ip <name>",
              "required": -17,
              "optional": 0,
              "bool": true,
              "short": "-i",
              "long": "--public-ip",
              "description": "the name of the public IP address assigned to the virtual machine"
            },
            {
              "flags": "-S, --static-ip <ip-address>",
              "required": -17,
              "optional": 0,
              "bool": true,
              "short": "-S",
              "long": "--static-ip",
              "description": "the static IP address assigned to the virtual machine"
            },
            {
              "flags": "-R, --reserved-ip <name>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-R",
              "long": "--reserved-ip",
              "description": "the name of the reserved IP address assigned to the virtual machine"
            },
            {
              "flags": "-A, --availability-set <name>",
              "required": -24,
              "optional": 0,
              "bool": true,
              "short": "-A",
              "long": "--availability-set",
              "description": "the name of availability set to create or use"
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            },
            {
              "flags": "-d, --custom-data <custom-data-file>",
              "required": -19,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--custom-data",
              "description": "CustomData file"
            },
            {
              "flags": "-f, --nic-config <nic-config>",
              "required": -18,
              "optional": 0,
              "bool": true,
              "short": "-f",
              "long": "--nic-config",
              "description": "the NIC configuration, comma separated list of NIC definition      \n Each NIC definition will be in the form  \"<nicName>:<subnetName>:[vnetStaticIP]:[nsgName]:[ipForwarding]\"      \n The VM must be created in a virtual network using --virtual-network-name option      \n The subnetName in each NIC definition must be an existing subnet in this virtual network"
            },
            {
              "flags": "--disable-boot-diagnostics",
              "required": 0,
              "optional": 0,
              "bool": true,
              "long": "--disable-boot-diagnostics",
              "description": "Disable boot diagnostics (enabled by default)."
            }
          ]
        },
        {
          "name": "set",
          "description": "Update VM settings",
          "fullName": "vm set",
          "usage": "[options] <name>",
          "filePath": "commands/asm/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": "-d, --dns-name <name>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--dns-name",
              "description": "only show VMs for this DNS name"
            },
            {
              "flags": "-B, --boot-diagnostics-enabled <boot-diagnostics-enabled>",
              "required": -32,
              "optional": 0,
              "bool": true,
              "short": "-B",
              "long": "--boot-diagnostics-enabled",
              "description": "Input true/false to enable/disable boot diagnostics."
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            }
          ]
        },
        {
          "name": "create-from",
          "description": "Create a VM from json role file",
          "fullName": "vm create-from",
          "usage": "[options] <dns-name> <role-file>",
          "filePath": "commands/asm/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": "-c, --connect",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-c",
              "long": "--connect",
              "description": "connect to existing VMs"
            },
            {
              "flags": "-l, --location <name>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-l",
              "long": "--location",
              "description": "the location"
            },
            {
              "flags": "-a, --affinity-group <name>",
              "required": -22,
              "optional": 0,
              "bool": true,
              "short": "-a",
              "long": "--affinity-group",
              "description": "the affinity group"
            },
            {
              "flags": "-t, --ssh-cert <pem-file>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--ssh-cert",
              "description": "Upload SSH certificate"
            },
            {
              "flags": "-w, --virtual-network-name <name>",
              "required": -28,
              "optional": 0,
              "bool": true,
              "short": "-w",
              "long": "--virtual-network-name",
              "description": "the virtual network name"
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            }
          ]
        },
        {
          "name": "list",
          "description": "List the VM",
          "fullName": "vm list",
          "usage": "[options]",
          "filePath": "commands/asm/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": "-d, --dns-name <name>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--dns-name",
              "description": "only show VMs for this DNS name"
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            }
          ]
        },
        {
          "name": "show",
          "description": "Show details about the VM",
          "fullName": "vm show",
          "usage": "[options] <name>",
          "filePath": "commands/asm/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": "-d, --dns-name <name>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--dns-name",
              "description": "only show VMs for this DNS name"
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            }
          ]
        },
        {
          "name": "delete",
          "description": "Delete the VM",
          "fullName": "vm delete",
          "usage": "[options] <name>",
          "filePath": "commands/asm/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": "-d, --dns-name <name>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--dns-name",
              "description": "only show VMs for this DNS name"
            },
            {
              "flags": "-b, --blob-delete",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-b",
              "long": "--blob-delete",
              "description": "Remove image and disk blobs"
            },
            {
              "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": "start",
          "description": "Start the VM",
          "fullName": "vm start",
          "usage": "[options] <name>",
          "filePath": "commands/asm/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": "-d, --dns-name <name>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--dns-name",
              "description": "only show VMs for this DNS name"
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            }
          ]
        },
        {
          "name": "restart",
          "description": "Restart the VM",
          "fullName": "vm restart",
          "usage": "[options] <name>",
          "filePath": "commands/asm/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": "-d, --dns-name <name>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--dns-name",
              "description": "only show VMs for this DNS name"
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            }
          ]
        },
        {
          "name": "shutdown",
          "description": "Shutdown the VM",
          "fullName": "vm shutdown",
          "usage": "[options] <name>",
          "filePath": "commands/asm/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": "-d, --dns-name <name>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--dns-name",
              "description": "only show VMs for this DNS name"
            },
            {
              "flags": "-p, --stay-provisioned",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-p",
              "long": "--stay-provisioned",
              "description": "if specified the compute resource will not be released on shutdown"
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            }
          ]
        },
        {
          "name": "capture",
          "description": "Capture the VM as OS Image or VM Image",
          "fullName": "vm capture",
          "usage": "[options] <vm-name> <target-image-name>",
          "filePath": "commands/asm/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": "-d, --dns-name <name>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--dns-name",
              "description": "filter VMs for the specified DNS name"
            },
            {
              "flags": "-e, --label <label>",
              "required": -13,
              "optional": 0,
              "bool": true,
              "short": "-e",
              "long": "--label",
              "description": "the target image friendly name"
            },
            {
              "flags": "-o, --os-state <osState>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-o",
              "long": "--os-state",
              "description": "the OS state [Specialized, Generalized], required for capturing VM as VM Image"
            },
            {
              "flags": "-t, --delete",
              "required": 0,
              "optional": 0,
              "bool": true,
              "short": "-t",
              "long": "--delete",
              "description": "Delete virtual machine after successful capture, can be used only for capturing a VM as OS Image"
            },
            {
              "flags": "-s, --subscription <id>",
              "required": -20,
              "optional": 0,
              "bool": true,
              "short": "-s",
              "long": "--subscription",
              "description": "the subscription id"
            }
          ]
        },
        {
          "name": "export",
          "description": "Export a VM to a file",
          "fullName": "vm export",
          "usage": "[options] <vm-name> <file-path>",
          "filePath": "commands/asm/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": "-d, --dns-name <name>",
              "required": -16,
              "optional": 0,
              "bool": true,
              "short": "-d",
              "long": "--dns-name",
              "description": "Export the virtual machine for this DNS 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": "list",
              "description": "List available resource extensions for VMs",
              "fullName": "vm extension list",
              "usage": "[options]",
              "filePath": "commands/asm/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": "-n, --extension-name <name>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--extension-name",
                  "description": "name of the extension"
                },
                {
                  "flags": "-p, --publisher-name <name>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--publisher-name",
                  "description": "name of the extension publisher"
                },
                {
                  "flags": "-e, --version <version>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--version",
                  "description": "version number of the extension to fetch"
                },
                {
                  "flags": "-a, --all-versions",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--all-versions",
                  "description": "list all versions of an extension"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "set",
              "description": "Enable/disable resource extensions for VMs",
              "fullName": "vm extension set",
              "usage": "[options] <vm-name> <extension-name> <publisher-name> <version>",
              "filePath": "commands/asm/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": "-r, --reference-name <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": "-t, --private-config <private-config>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "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": "-b, --disable",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--disable",
                  "description": "disable extension"
                },
                {
                  "flags": "-u, --uninstall",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--uninstall",
                  "description": "uninstall extension"
                },
                {
                  "flags": "-d, --dns-name <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-name",
                  "description": "consider VM hosted in this DNS name"
                },
                {
                  "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 extensions for VMs",
              "fullName": "vm extension set-chef",
              "usage": "[options] <vm-name>",
              "filePath": "commands/asm/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": "-V, --version <number>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-V",
                  "long": "--version",
                  "description": "extension's version number. Default is latest."
                },
                {
                  "flags": "-r, --reference-name <name>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--reference-name",
                  "description": "extension's reference name"
                },
                {
                  "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": "-v, --bootstrap-version <number>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-v",
                  "long": "--bootstrap-version",
                  "description": "chef-client version to be installed"
                },
                {
                  "flags": "-b, --disable",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--disable",
                  "description": "disable extension"
                },
                {
                  "flags": "-u, --uninstall",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--uninstall",
                  "description": "uninstall extension"
                },
                {
                  "flags": "-d, --dns-name <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-name",
                  "description": "consider VM hosted in this DNS name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "get",
              "description": "Gets resource extensions applied to a VM.",
              "fullName": "vm extension get",
              "usage": "[options] <vm-name>",
              "filePath": "commands/asm/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": "-n, --extension-name <name>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--extension-name",
                  "description": "name of the extension"
                },
                {
                  "flags": "-p, --publisher-name <name>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--publisher-name",
                  "description": "name of the extension publisher"
                },
                {
                  "flags": "-r, --reference-name <name>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--reference-name",
                  "description": "extension's reference name"
                },
                {
                  "flags": "-d, --dns-name <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-name",
                  "description": "consider only VM for this DNS name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "get-chef",
              "description": "Gets Chef extension applied to a VM.",
              "fullName": "vm extension get-chef",
              "usage": "[options] <vm-name>",
              "filePath": "commands/asm/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": "-r, --reference-name <name>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--reference-name",
                  "description": "extension's reference name"
                },
                {
                  "flags": "-d, --dns-name <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-name",
                  "description": "consider only VM for this DNS name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            }
          ],
          "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 VM",
              "fullName": "vm docker create",
              "usage": "[options] <dns-name> <image> <user-name> [password]",
              "filePath": "commands/asm/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": "-p, --docker-port [port]",
                  "required": 0,
                  "optional": -19,
                  "bool": true,
                  "short": "-p",
                  "long": "--docker-port",
                  "description": "Port to use for docker [2376]"
                },
                {
                  "flags": "-C, --docker-cert-dir [dir]",
                  "required": 0,
                  "optional": -23,
                  "bool": true,
                  "short": "-C",
                  "long": "--docker-cert-dir",
                  "description": "Directory containing docker certs [~/.docker/]"
                },
                {
                  "flags": "-N, --docker-cert-cn [CN]",
                  "required": 0,
                  "optional": -22,
                  "bool": true,
                  "short": "-N",
                  "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 [*.cloudapp.net]"
                },
                {
                  "flags": "-o, --community",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--community",
                  "description": "the <image> is a community image"
                },
                {
                  "flags": "-c, --connect",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--connect",
                  "description": "connect to existing VMs"
                },
                {
                  "flags": "-l, --location <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-a, --affinity-group <name>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--affinity-group",
                  "description": "the affinity group"
                },
                {
                  "flags": "-u, --blob-url <url>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--blob-url",
                  "description": "the blob url for OS disk"
                },
                {
                  "flags": "-z, --vm-size <size>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-z",
                  "long": "--vm-size",
                  "description": "the virtual machine size [Small]"
                },
                {
                  "flags": "-n, --vm-name <name>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--vm-name",
                  "description": "the virtual machine name"
                },
                {
                  "flags": "-e, --ssh [port]",
                  "required": 0,
                  "optional": -11,
                  "bool": true,
                  "short": "-e",
                  "long": "--ssh",
                  "description": "the ssh port to enable [22]"
                },
                {
                  "flags": "-t, --ssh-cert <pem-file|fingerprint>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--ssh-cert",
                  "description": "the SSH certificate"
                },
                {
                  "flags": "-P, --no-ssh-password",
                  "required": 0,
                  "optional": 0,
                  "bool": false,
                  "short": "-P",
                  "long": "--no-ssh-password",
                  "description": "indicates that the password should be removed when using --ssh-cert"
                },
                {
                  "flags": "-E, --no-ssh-endpoint",
                  "required": 0,
                  "optional": 0,
                  "bool": false,
                  "short": "-E",
                  "long": "--no-ssh-endpoint",
                  "description": "indicates that no public SSH endpoint should be created"
                },
                {
                  "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-cert is specified."
                },
                {
                  "flags": "-w, --virtual-network-name <name>",
                  "required": -28,
                  "optional": 0,
                  "bool": true,
                  "short": "-w",
                  "long": "--virtual-network-name",
                  "description": "the virtual network name"
                },
                {
                  "flags": "-b, --subnet-names <list>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--subnet-names",
                  "description": "the comma-delimited subnet names"
                },
                {
                  "flags": "-S, --static-ip <ip-address>",
                  "required": -17,
                  "optional": 0,
                  "bool": true,
                  "short": "-S",
                  "long": "--static-ip",
                  "description": "the static IP address assigned to the virtual machine"
                },
                {
                  "flags": "-R, --reserved-ip <name>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-R",
                  "long": "--reserved-ip",
                  "description": "the name of the reserved IP address assigned to the virtual machine"
                },
                {
                  "flags": "-A, --availability-set <name>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-A",
                  "long": "--availability-set",
                  "description": "the name of availability set to create or use"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                },
                {
                  "flags": "-d, --custom-data <custom-data-file>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--custom-data",
                  "description": "CustomData file"
                }
              ]
            }
          ],
          "categories": {}
        },
        "location": {
          "name": "location",
          "description": "Commands to manage your Virtual Machine locations",
          "fullName": "vm location",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List locations available for your account",
              "fullName": "vm location list",
              "usage": "[options]",
              "filePath": "commands/asm/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": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            }
          ],
          "categories": {}
        },
        "static-ip": {
          "name": "static-ip",
          "description": "Commands to manage your Virtual Machine static IP address",
          "fullName": "vm static-ip",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "show",
              "description": "Show a VM static IP address",
              "fullName": "vm static-ip show",
              "usage": "[options] <vm-name>",
              "filePath": "commands/asm/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": "-d, --dns-name <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-name",
                  "description": "consider VM hosted in this DNS name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "set",
              "description": "Set a VM static IP address",
              "fullName": "vm static-ip set",
              "usage": "[options] <vm-name> <ip-address>",
              "filePath": "commands/asm/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": "-d, --dns-name <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-name",
                  "description": "consider VM hosted in this DNS name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "remove",
              "description": "Remove a VM static IP address",
              "fullName": "vm static-ip remove",
              "usage": "[options] <vm-name>",
              "filePath": "commands/asm/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": "-d, --dns-name <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-name",
                  "description": "consider VM hosted in this DNS name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            }
          ],
          "categories": {}
        },
        "public-ip": {
          "name": "public-ip",
          "description": "Commands to manage your Virtual Machine public IP address",
          "fullName": "vm public-ip",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "list",
              "description": "List public IP addresses for a VM",
              "fullName": "vm public-ip list",
              "usage": "[options] [vm-name]",
              "filePath": "commands/asm/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": "-n, --vm-name <name>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--vm-name",
                  "description": "the VM name"
                },
                {
                  "flags": "-d, --dns-name <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-name",
                  "description": "filter VMs for the specified DNS name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "set",
              "description": "Set public IP address for a VM",
              "fullName": "vm public-ip set",
              "usage": "[options] [vm-name] [publicip-name]",
              "filePath": "commands/asm/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": "-n, --vm-name <name>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--vm-name",
                  "description": "the VM name"
                },
                {
                  "flags": "-p, --publicip-name <name>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--publicip-name",
                  "description": "the public IP name"
                },
                {
                  "flags": "-t, --idle-timeoutInMinutes <timeout>",
                  "required": -29,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--idle-timeoutInMinutes",
                  "description": "timeout for tcp idle connection"
                },
                {
                  "flags": "-d, --dns-name <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-name",
                  "description": "filter VMs for the specified DNS name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete public IP address for a VM",
              "fullName": "vm public-ip delete",
              "usage": "[options] [vm-name] [publicip-name]",
              "filePath": "commands/asm/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": "-n, --vm-name <name>",
                  "required": -15,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--vm-name",
                  "description": "the VM name"
                },
                {
                  "flags": "-p, --publicip-name <name>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--publicip-name",
                  "description": "the public IP name"
                },
                {
                  "flags": "-q, --quiet",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-q",
                  "long": "--quiet",
                  "description": "quiet mode, do not ask for remove confirmation"
                },
                {
                  "flags": "-d, --dns-name <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-name",
                  "description": "filter VMs for the specified DNS name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            }
          ],
          "categories": {}
        },
        "endpoint": {
          "name": "endpoint",
          "description": "Commands to manage your Virtual Machine endpoints",
          "fullName": "vm endpoint",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "create",
              "description": "Create a VM endpoint",
              "fullName": "vm endpoint create",
              "usage": "[options] <vm-name> <public-port> [local-port]",
              "filePath": "commands/asm/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": "-d, --dns-name <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-name",
                  "description": "filter VMs for the specified DNS name"
                },
                {
                  "flags": "-n, --name <name>",
                  "required": -12,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--name",
                  "description": "the endpoint name"
                },
                {
                  "flags": "-k, --local-port <local-port>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--local-port",
                  "description": "the local port"
                },
                {
                  "flags": "-o, --protocol <protocol>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--protocol",
                  "description": "the transport layer protocol for the endpoint (tcp or udp)"
                },
                {
                  "flags": "-m, --idle-timeout <idle-timeout>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--idle-timeout",
                  "description": "timeout for tcp idle connection specified in minutes"
                },
                {
                  "flags": "-t, --probe-port <port>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--probe-port",
                  "description": "the virtual machine port to use to inspect the availability status"
                },
                {
                  "flags": "-r, --probe-protocol <protocol>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--probe-protocol",
                  "description": "the protocol to use to inspect the availability status"
                },
                {
                  "flags": "-p, --probe-path <path>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--probe-path",
                  "description": "the relative path to inspect the availability status"
                },
                {
                  "flags": "-e, --probe-interval <probe-interval>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--probe-interval",
                  "description": "the availability status check interval specified in seconds"
                },
                {
                  "flags": "-f, --probe-timeout <probe-timeout>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--probe-timeout",
                  "description": "the availability status check timeout specified in seconds"
                },
                {
                  "flags": "-u, --direct-server-return <direct-server-return>",
                  "required": -28,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--direct-server-return",
                  "description": "enable or disable direct server return on this endpoint, valid values are [Enabled, Disabled] Disabled by default"
                },
                {
                  "flags": "-b, --load-balanced-set-name <load-balanced-set-name>",
                  "required": -30,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--load-balanced-set-name",
                  "description": "the load-balancer set name"
                },
                {
                  "flags": "-i, --internal-load-balancer-name <name>",
                  "required": -35,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--internal-load-balancer-name",
                  "description": "the internal load balancer name"
                },
                {
                  "flags": "-a, --load-balancer-distribution <load-balancer-distribution>",
                  "required": -34,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--load-balancer-distribution",
                  "description": "the load balancer distribution, valid values are [sourceIP, sourceIPProtocol, None]"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "create-multiple",
              "description": "Create multiple VM endpoints",
              "fullName": "vm endpoint create-multiple",
              "usage": "[options] <vm-name> <endpoints-config>",
              "filePath": "commands/asm/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": "-d, --dns-name <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-name",
                  "description": "filter VMs for the specified DNS name"
                },
                {
                  "flags": "-c, --endpoints-config <endpoints-config>",
                  "required": -24,
                  "optional": 0,
                  "bool": true,
                  "short": "-c",
                  "long": "--endpoints-config",
                  "description": "comma seperated list of endpoint configurations, each configuration must have the format <public-port>:<local-port>:<protocol>:<idle-timeout>:<direct-server-return>:<probe-protocol>:<probe-port>:<probe-path>:<probe-interval>:<probe-timeout>:<load-balanced-set-name>:<internal-load-balancer-name>:<load-balancer-distribution>"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a VM endpoint",
              "fullName": "vm endpoint delete",
              "usage": "[options] <vm-name> <endpoint-name>",
              "filePath": "commands/asm/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": "-d, --dns-name <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-name",
                  "description": "filter VMs for the specified DNS name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "set",
              "description": "Update a VM endpoint",
              "fullName": "vm endpoint set",
              "usage": "[options] <vm-name> <endpoint-name>",
              "filePath": "commands/asm/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": "-d, --dns-name <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-name",
                  "description": "filter VMs for the specified DNS name"
                },
                {
                  "flags": "-n, --new-endpoint-name <new-endpoint-name>",
                  "required": -25,
                  "optional": 0,
                  "bool": true,
                  "short": "-n",
                  "long": "--new-endpoint-name",
                  "description": "the new name for the endpoint"
                },
                {
                  "flags": "-l, --public-port <public-port>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--public-port",
                  "description": "the public port"
                },
                {
                  "flags": "-k, --local-port <local-port>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--local-port",
                  "description": "the local port"
                },
                {
                  "flags": "-o, --protocol <protocol>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--protocol",
                  "description": "the transport layer protocol for the endpoint (tcp or udp)"
                },
                {
                  "flags": "-m, --idle-timeout <idle-timeout>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--idle-timeout",
                  "description": "connection timeout for tcp idle connection, specified in minutes"
                },
                {
                  "flags": "-t, --probe-port <probe-port>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-t",
                  "long": "--probe-port",
                  "description": "the virtual machine port to use to inspect the availability status"
                },
                {
                  "flags": "-r, --probe-protocol <probe-protocol>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-r",
                  "long": "--probe-protocol",
                  "description": "the protocol to use to inspect the availability status"
                },
                {
                  "flags": "-p, --probe-path <probe-path>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--probe-path",
                  "description": "the relative path to inspect the availability status"
                },
                {
                  "flags": "-e, --probe-interval <probe-interval>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--probe-interval",
                  "description": "the availability status check interval specified in seconds"
                },
                {
                  "flags": "-f, --probe-timeout <probe-timeout>",
                  "required": -21,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--probe-timeout",
                  "description": "the availability status check timeout specified in seconds"
                },
                {
                  "flags": "-u, --direct-server-return <direct-server-return>",
                  "required": -28,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--direct-server-return",
                  "description": "enable or disable direct server return on endpoint, valid values are [Enabled, Disabled] Disabled by default"
                },
                {
                  "flags": "-b, --load-balanced-set-name <load-balanced-set-name>",
                  "required": -30,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--load-balanced-set-name",
                  "description": "the load balanced set name"
                },
                {
                  "flags": "-i, --internal-load-balancer-name <internal-load-balancer-name>",
                  "required": -35,
                  "optional": 0,
                  "bool": true,
                  "short": "-i",
                  "long": "--internal-load-balancer-name",
                  "description": "the internal load balancer name"
                },
                {
                  "flags": "-a, --load-balancer-distribution <load-balancer-distribution>",
                  "required": -34,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--load-balancer-distribution",
                  "description": "the load balancer distribution, valid values are [sourceIP, sourceIPProtocol, None]"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "list",
              "description": "Get all endpoints in a VM",
              "fullName": "vm endpoint list",
              "usage": "[options] <vm-name>",
              "filePath": "commands/asm/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": "-d, --dns-name <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-name",
                  "description": "only consider VM for this DNS name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "show",
              "description": "Get an endpoint in a VM",
              "fullName": "vm endpoint show",
              "usage": "[options] <vm-name> <endpoint-name>",
              "filePath": "commands/asm/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": "-d, --dns-name <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-name",
                  "description": "filter VMs for the specified DNS name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            }
          ],
          "categories": {
            "acl-rule": {
              "name": "acl-rule",
              "description": "Commands to manage your Virtual Machine endpoint's ACL rules",
              "fullName": "vm endpoint acl-rule",
              "usage": "[options] [command]",
              "options": [],
              "commands": [
                {
                  "name": "create",
                  "description": "Create an ACL rule for a VM endpoint",
                  "fullName": "vm endpoint acl-rule create",
                  "usage": "[options] [vm-name] [endpoint-name] [order] [action] [remote-subnet]",
                  "filePath": "commands/asm/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": "-n, --vm-name <name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--vm-name",
                      "description": "the VM name"
                    },
                    {
                      "flags": "-e, --endpoint-name <name>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--endpoint-name",
                      "description": "the ACL rule name"
                    },
                    {
                      "flags": "-o, --order <id>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--order",
                      "description": "the ACL rule order"
                    },
                    {
                      "flags": "-a, --action  <name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--action",
                      "description": "the ACL rule action"
                    },
                    {
                      "flags": "-t, --remote-subnet  <subnet>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--remote-subnet",
                      "description": "the ACL rule remote subnet"
                    },
                    {
                      "flags": "-r, --description <description>",
                      "required": -19,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--description",
                      "description": "the ACL rule rule description"
                    },
                    {
                      "flags": "-d, --dns-name <name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--dns-name",
                      "description": "filter VMs for the specified DNS name"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                },
                {
                  "name": "list",
                  "description": "List ACL rules defined for a VM endpoint",
                  "fullName": "vm endpoint acl-rule list",
                  "usage": "[options] [vm-name] [endpoint-name]",
                  "filePath": "commands/asm/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": "-n, --vm-name <name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--vm-name",
                      "description": "the VM name"
                    },
                    {
                      "flags": "-e, --endpoint-name <name>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--endpoint-name",
                      "description": "the ACL rule name"
                    },
                    {
                      "flags": "-d, --dns-name <name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--dns-name",
                      "description": "filter VMs for the specified DNS name"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                },
                {
                  "name": "delete",
                  "description": "Delete an ACL rule for a VM endpoint",
                  "fullName": "vm endpoint acl-rule delete",
                  "usage": "[options] [vm-name] [endpoint-name] [order]",
                  "filePath": "commands/asm/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": "-n, --vm-name <name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--vm-name",
                      "description": "the VM name"
                    },
                    {
                      "flags": "-e, --endpoint-name <name>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--endpoint-name",
                      "description": "the ACL rule name"
                    },
                    {
                      "flags": "-o, --order <id>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--order",
                      "description": "the ACL rule order"
                    },
                    {
                      "flags": "-d, --dns-name <name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--dns-name",
                      "description": "filter VMs for the specified DNS 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": "set",
                  "description": "Update an ACL rule defined for a VM endpoint",
                  "fullName": "vm endpoint acl-rule set",
                  "usage": "[options] [vm-name] [endpoint-name] [order]",
                  "filePath": "commands/asm/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": "-n, --vm-name <name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-n",
                      "long": "--vm-name",
                      "description": "the VM name"
                    },
                    {
                      "flags": "-e, --endpoint-name <name>",
                      "required": -21,
                      "optional": 0,
                      "bool": true,
                      "short": "-e",
                      "long": "--endpoint-name",
                      "description": "the ACL rule name"
                    },
                    {
                      "flags": "-o, --order <id>",
                      "required": -13,
                      "optional": 0,
                      "bool": true,
                      "short": "-o",
                      "long": "--order",
                      "description": "the ACL rule order"
                    },
                    {
                      "flags": "-w, --new-order <id>",
                      "required": -17,
                      "optional": 0,
                      "bool": true,
                      "short": "-w",
                      "long": "--new-order",
                      "description": "the new order for the ACL"
                    },
                    {
                      "flags": "-a, --action  <name>",
                      "required": -15,
                      "optional": 0,
                      "bool": true,
                      "short": "-a",
                      "long": "--action",
                      "description": "the new action for the ACL"
                    },
                    {
                      "flags": "-t, --remote-subnet  <subnet>",
                      "required": -22,
                      "optional": 0,
                      "bool": true,
                      "short": "-t",
                      "long": "--remote-subnet",
                      "description": "the new remote subnet for the ACL rule"
                    },
                    {
                      "flags": "-r, --description  <name>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-r",
                      "long": "--description",
                      "description": "the new description for the ACL"
                    },
                    {
                      "flags": "-d, --dns-name <name>",
                      "required": -16,
                      "optional": 0,
                      "bool": true,
                      "short": "-d",
                      "long": "--dns-name",
                      "description": "filter VMs for the specified DNS name"
                    },
                    {
                      "flags": "-s, --subscription <id>",
                      "required": -20,
                      "optional": 0,
                      "bool": true,
                      "short": "-s",
                      "long": "--subscription",
                      "description": "the subscription id"
                    }
                  ]
                }
              ],
              "categories": {}
            }
          }
        },
        "image": {
          "name": "image",
          "description": "Commands to manage your Virtual Machine images",
          "fullName": "vm image",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "show",
              "description": "Show details about a VM image",
              "fullName": "vm image show",
              "usage": "[options] <name>",
              "filePath": "commands/asm/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": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "list",
              "description": "List VM images",
              "fullName": "vm image list",
              "usage": "[options]",
              "filePath": "commands/asm/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": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a VM image from a personal repository",
              "fullName": "vm image delete",
              "usage": "[options] <name>",
              "filePath": "commands/asm/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": "-b, --blob-delete",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--blob-delete",
                  "description": "delete the underlying blob from storage"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "create",
              "description": "Upload and register a VM image",
              "fullName": "vm image create",
              "usage": "[options] <name> [source-path]",
              "filePath": "commands/asm/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": "-u, --blob-url <url>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--blob-url",
                  "description": "the target image blob url"
                },
                {
                  "flags": "-l, --location <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-a, --affinity-group <name>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--affinity-group",
                  "description": "the affinity group"
                },
                {
                  "flags": "-o, --os <type>",
                  "required": -10,
                  "optional": 0,
                  "bool": true,
                  "short": "-o",
                  "long": "--os",
                  "description": "the operating system [linux|windows]"
                },
                {
                  "flags": "-p, --parallel <number>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--parallel",
                  "description": "the maximum number of parallel uploads [96]"
                },
                {
                  "flags": "-m, --md5-skip",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--md5-skip",
                  "description": "skip MD5 hash computation"
                },
                {
                  "flags": "-f, --force-overwrite",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--force-overwrite",
                  "description": "Force overwrite of prior uploads"
                },
                {
                  "flags": "-e, --label <about>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--label",
                  "description": "the image label"
                },
                {
                  "flags": "-d, --description <about>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--description",
                  "description": "the image description"
                },
                {
                  "flags": "-b, --base-vhd <blob>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--base-vhd",
                  "description": "the base vhd blob url"
                },
                {
                  "flags": "-k, --source-key <key>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--source-key",
                  "description": "the source storage key if source-path\n                         is a Microsoft Azure private blob url"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            }
          ],
          "categories": {}
        },
        "disk": {
          "name": "disk",
          "description": "Commands to manage your Virtual Machine data disks",
          "fullName": "vm disk",
          "usage": "[options] [command]",
          "options": [],
          "commands": [
            {
              "name": "show",
              "description": "Show details about a disk",
              "fullName": "vm disk show",
              "usage": "[options] <name>",
              "filePath": "commands/asm/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": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "list",
              "description": "List disk images, or disks attached to a specified VM",
              "fullName": "vm disk list",
              "usage": "[options] [vm-name]",
              "filePath": "commands/asm/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": "-d, --dns-name <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-name",
                  "description": "only show VMs for this DNS name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "delete",
              "description": "Delete a disk image from personal repository",
              "fullName": "vm disk delete",
              "usage": "[options] <name>",
              "filePath": "commands/asm/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": "-b, --blob-delete",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--blob-delete",
                  "description": "Delete underlying blob from storage"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "create",
              "description": "Upload and register a disk image",
              "fullName": "vm disk create",
              "usage": "[options] <name> [source-path]",
              "filePath": "commands/asm/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": "-u, --blob-url <url>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-u",
                  "long": "--blob-url",
                  "description": "the target image blob url"
                },
                {
                  "flags": "-l, --location <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-l",
                  "long": "--location",
                  "description": "the location"
                },
                {
                  "flags": "-a, --affinity-group <name>",
                  "required": -22,
                  "optional": 0,
                  "bool": true,
                  "short": "-a",
                  "long": "--affinity-group",
                  "description": "the affinity group"
                },
                {
                  "flags": "-o, --os [type]",
                  "required": 0,
                  "optional": -10,
                  "bool": true,
                  "short": "-o",
                  "long": "--os",
                  "description": "the operating system if any [linux|windows|none]"
                },
                {
                  "flags": "-p, --parallel <number>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--parallel",
                  "description": "the maximum number of parallel uploads [96]"
                },
                {
                  "flags": "-m, --md5-skip",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--md5-skip",
                  "description": "skip MD5 hash computation"
                },
                {
                  "flags": "-f, --force-overwrite",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--force-overwrite",
                  "description": "Force overwrite of prior uploads"
                },
                {
                  "flags": "-e, --label <about>",
                  "required": -13,
                  "optional": 0,
                  "bool": true,
                  "short": "-e",
                  "long": "--label",
                  "description": "the image label"
                },
                {
                  "flags": "-d, --description <about>",
                  "required": -19,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--description",
                  "description": "the image description"
                },
                {
                  "flags": "-b, --base-vhd <blob>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--base-vhd",
                  "description": "the base vhd blob url"
                },
                {
                  "flags": "-k, --source-key <key>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--source-key",
                  "description": "the source storage key if source-path\n                         is a Microsoft Azure private blob url"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "upload",
              "description": "Upload a VHD to a storage account",
              "fullName": "vm disk upload",
              "usage": "[options] <source-path> <blob-url> <storage-account-key>",
              "filePath": "commands/asm/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": "-p, --parallel <number>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-p",
                  "long": "--parallel",
                  "description": "the maximum number of parallel uploads [96]"
                },
                {
                  "flags": "-m, --md5-skip",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-m",
                  "long": "--md5-skip",
                  "description": "skip MD5 hash computation"
                },
                {
                  "flags": "-f, --force-overwrite",
                  "required": 0,
                  "optional": 0,
                  "bool": true,
                  "short": "-f",
                  "long": "--force-overwrite",
                  "description": "Force overwrite of prior uploads"
                },
                {
                  "flags": "-b, --base-vhd <blob>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-b",
                  "long": "--base-vhd",
                  "description": "the base vhd blob url"
                },
                {
                  "flags": "-k, --source-key <key>",
                  "required": -18,
                  "optional": 0,
                  "bool": true,
                  "short": "-k",
                  "long": "--source-key",
                  "description": "the source storage key if source-path\n                         is a Microsoft Azure private blob url"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "attach",
              "description": "Attach a data-disk to a VM",
              "fullName": "vm disk attach",
              "usage": "[options] <vm-name> <disk-image-name>",
              "filePath": "commands/asm/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": "-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": "-d, --dns-name <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-name",
                  "description": "filter VMs for the specified DNS name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "attach-new",
              "description": "Attach a new data-disk to a VM",
              "fullName": "vm disk attach-new",
              "usage": "[options] <vm-name> <size-in-gb> [blob-url]",
              "filePath": "commands/asm/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": "-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": "-d, --dns-name <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-name",
                  "description": "filter VMs for the specified DNS name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "detach",
              "description": "Detaches a data-disk attached to a VM",
              "fullName": "vm disk detach",
              "usage": "[options] <vm-name> <lun>",
              "filePath": "commands/asm/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": "-d, --dns-name <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-name",
                  "description": "filter VMs for the specified DNS name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            },
            {
              "name": "update",
              "description": "Update properties of a data-disk attached to a VM",
              "fullName": "vm disk update",
              "usage": "[options] <vm-name> <lun>",
              "filePath": "commands/asm/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": "-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": "-d, --dns-name <name>",
                  "required": -16,
                  "optional": 0,
                  "bool": true,
                  "short": "-d",
                  "long": "--dns-name",
                  "description": "filter VMs for the specified DNS name"
                },
                {
                  "flags": "-s, --subscription <id>",
                  "required": -20,
                  "optional": 0,
                  "bool": true,
                  "short": "-s",
                  "long": "--subscription",
                  "description": "the subscription id"
                }
              ]
            }
          ],
          "categories": {}
        }
      }
    }
  }
}