// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements.  See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership.  The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License.  You may obtain a copy of the License at
//
//   http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing,
// software distributed under the License is distributed on an
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied.  See the License for the
// specific language governing permissions and limitations
// under the License.
cloudStack.docs = {

    //Dedicate Resource

    helpDedicateResource: {

        desc: 'Check this box to dedicate the resources to specific domain/account',
        externalLink: ''

    },

    helpAccountForDedication: {

        desc: 'Please enter an account name which belongs to the above selected domain in order to dedicate this resource to this account',
        externalLink: ''

    },


    //Delete/archive events
    helpEventsDeleteType: {

        desc: 'Delete all the events by specifying its TYPE (e.g., USER.LOGIN)',
        externalLink: ''

    },

    helpEventsDeleteDate: {

        desc: 'Delete all the events which have been created in date range (specify start and end date)',
        externalLink: ''
    },

    helpEventsArchiveType: {

        desc: 'Archive all the events by specifying its TYPE (i.e., USER.LOGIN)',
        externalLink: ''
    },

    helpEventsArchiveDate: {

        desc: 'Archive all the events which have been created in date range (specify start and end date)',
        externalLink: ''
    },

    //Delete/archive Alerts
    helpAlertsDeleteType: {

        desc: 'Delete all the alerts by specifying its TYPE (integer number)',
        externalLink: ''

    },

    helpAlertsDeleteDate: {

        desc: 'Delete all the alerts which have been created in date range (specify start and end date)',
        externalLink: ''
    },

    helpAlertsArchiveType: {

        desc: 'Archive all the alerts by specifying its TYPE (integer number)',
        externalLink: ''
    },

    helpAlertsArchiveDate: {

        desc: 'Archive all the alerts which have been created in date range (specify start and end date)',
        externalLink: ''
    },


    //Ldap
    helpLdapQueryFilter: {

        desc: 'Query filter is used to find a mapped user in the external LDAP server.Cloudstack provides some wildchars to represent the unique attributes in its database . Example - If Cloudstack account-name is same as the LDAP uid, then following will be a valid filter: Queryfilter :  (&(uid=%u) ,  Queryfilter: .incase of Active Directory , Email _ID :(&(mail=%e)) , displayName :(&(displayName=%u)',

        externalLink: ''
    },


    //IP Reservation tooltips
    helpIPReservationCidr: {
        desc: 'Edit CIDR when you want to configure IP Reservation in isolated guest Network',
        externalLink: ''

    },

    helpIPReservationNetworkCidr: {
        desc: 'The CIDR of the entire network when IP reservation is configured',
        externalLink: ' '

    },

    helpReservedIPRange: {
        desc: 'The IP Range which is not used by CloudStack to allocate to Guest VMs.Can be used for Non Cloudstack purposes.',
        externalLink: ''
    },

    // Add account
    helpAccountUsername: {
        desc: 'Any desired login ID. Must be unique in the current domain. The same username can exist in other domains, including sub-domains.',
        externalLink: ''
    },

    helpOverridePublicNetwork: {
        desc: 'Choose to override zone wide traffic label for guest traffic for this cluster',
        externalLink: ''

    },

    helpOverrideGuestNetwork: {

        desc: 'Choose to override zone wide traffic label for guest traffic for this cluster',
        externalLink: ''

    },

    helpAccountPassword: {
        desc: 'Any desired password',
        externalLink: ''
    },
    helpAccountConfirmPassword: {
        desc: 'Type the same password again',
        externalLink: ''
    },
    helpAccountEmail: {
        desc: 'The account\'s email address',
        externalLink: ''
    },
    helpAccountFirstName: {
        desc: 'The first name, also known as the given name, of a person; or the first part of the entity represented by the account, such as a customer or department',
        externalLink: ''
    },
    helpAccountLastName: {
        desc: 'The last name, also known as the family name, of a person; or the second part of the name of a customer or department',
        externalLink: ''
    },
    helpAccountDomain: {
        desc: 'Domain in which the account is to be created',
        externalLink: ''
    },
    helpAccountAccount: {
        desc: 'Multiple users can exist in an account. Set the parent account name here.',
        externalLink: ''
    },
    helpAccountType: {
        desc: 'Root admin can access all resources. Domain admin can access the domain\'s users, but not physical servers. User sees only their own resources, such as VMs.',
        externalLink: ''
    },
    helpAccountTimezone: {
        desc: 'Set the time zone that corresponds to the account\'s locale',
        externalLink: ''
    },
    helpAccountNetworkDomain: {
        desc: 'If you want to assign a special domain name to the account\'s guest VM network, specify the DNS suffix',
        externalLink: ''
    },
    // Add cluster
    helpClusterZone: {
        desc: 'The zone in which you want to create the cluster',
        externalLink: ''
    },
    helpClusterHypervisor: {
        desc: 'The type of hypervisor software that runs on the hosts in this cluster. All hosts in a cluster run the same hypervisor.',
        externalLink: ''
    },
    helpClusterPod: {
        desc: 'The pod in which you want to create the cluster',
        externalLink: ''
    },
    helpClusterName: {
        desc: 'Cluster name. Used for display only. For VMware hypervisor, this must be a predefined name in VCenter.',
        externalLink: ''
    },
    helpClustervCenterHost: {
        desc: 'The hostname or IP address of the vCenter server',
        externalLink: ''
    },
    helpClustervCenterUsername: {
        desc: 'ID of a user with all administrative privileges on vCenter',
        externalLink: ''
    },
    helpClustervCenterPassword: {
        desc: 'Password of the user in Username',
        externalLink: ''
    },
    helpClustervCenterDatacenter: {
        desc: 'The vCenter datacenter that the cluster is in. For example, cloud.dc.VM',
        externalLink: ''
    },
    // Add compute offering
    helpComputeOfferingName: {
        desc: 'Any desired name for the offering',
        externalLink: ''
    },
    helpComputeOfferingDescription: {
        desc: 'A short description of the offering that can be displayed to users',
        externalLink: ''
    },
    helpComputeOfferingStorageType: {
        desc: 'Type of disk for the VM. Local storage is attached to the hypervisor host where the VM is running. Shared storage is accessible via NFS.',
        externalLink: ''
    },
    helpComputeOfferingCPUCores: {
        desc: 'The number of cores which should be allocated to a VM with this offering',
        externalLink: ''
    },
    helpComputeOfferingCPUMHz: {
        desc: 'The CPU speed of the cores that the VM is allocated. For example, 2000 provides a 2 GHz clock.',
        externalLink: ''
    },
    helpComputeOfferingMemory: {
        desc: 'The amount of memory in megabytes to allocate for the system VM. For example, 2048 provides 2 GB RAM.',
        externalLink: ''
    },
    helpComputeOfferingNetworkRate: {
        desc: 'Allowed data transfer rate in megabits(Mb) per second',
        externalLink: ''
    },
    helpComputeOfferingDiskBytesReadRate: {
        desc: 'Allowed disk read rate in bytes per second',
        externalLink: ''
    },
    helpComputeOfferingDiskBytesWriteRate: {
        desc: 'Allowed disk write rate in bytes per second',
        externalLink: ''
    },
    helpComputeOfferingDiskIopsReadRate: {
        desc: 'Allowed disk read rate in I/O requests per second',
        externalLink: ''
    },
    helpComputeOfferingDiskIopsWriteRate: {
        desc: 'Allowed disk write rate in I/O requests per second',
        externalLink: ''
    },
    helpComputeOfferingHA: {
        desc: 'If yes, the administrator can choose to have the VM be monitored and as highly available as possible',
        externalLink: ''
    },
    helpComputeOfferingStorageTags: {
        desc: 'Comma-separated list of attributes that should be associated with the primary storage used by the VM. For example "ssd,blue".',
        externalLink: ''
    },
    helpComputeOfferingHostTags: {
        desc: 'Any tags that you use to organize your hosts',
        externalLink: ''
    },
    helpComputeOfferingCPUCap: {
        desc: 'If yes, the system will limit the level of CPU usage even if spare capacity is available',
        externalLink: ''
    },
    helpComputeOfferingPublic: {
        desc: 'Yes makes the offering available to all domains. No limits the scope to a subdomain; you will be prompted for the subdomain\'s name.',
        externalLink: ''
    },
    helpComputeOfferingDomain: {
        desc: 'The domain to associate this compute offering with'
    },
    // Add disk offering
    helpDiskOfferingName: {
        desc: 'Any desired name for the offering',
        externalLink: ''
    },
    helpDiskOfferingDescription: {
        desc: 'A short description of the offering that can be displayed to users',
        externalLink: ''
    },
    helpDiskOfferingStorageType: {
        desc: 'Type of disk for the VM. Local is attached to the hypervisor host where the VM is running. Shared is storage accessible via NFS.',
        externalLink: ''
    },
    helpDiskOfferingQoSType: {
        desc: 'Type of Quality of Service desired, if any.',
        externalLink: ''
    },
    helpDiskOfferingCustomDiskSize: {
        desc: 'If checked, the user can set their own disk size. If not checked, the root administrator must define a value in Disk Size.',
        externalLink: ''
    },
    helpDiskOfferingDiskSize: {
        desc: 'Appears only if Custom Disk Size is not selected. Define the volume size in GB.',
        externalLink: ''
    },
    helpDiskOfferingDiskBytesReadRate: {
        desc: 'Allowed disk read rate in bytes per second',
        externalLink: ''
    },
    helpDiskOfferingDiskBytesWriteRate: {
        desc: 'Allowed disk write rate in bytes per second',
        externalLink: ''
    },
    helpDiskOfferingDiskIopsReadRate: {
        desc: 'Allowed disk read rate in I/O requests per second',
        externalLink: ''
    },
    helpDiskOfferingDiskIopsWriteRate: {
        desc: 'Allowed disk write rate in I/O requests per second',
        externalLink: ''
    },
    helpDiskOfferingCustomDiskIops: {
        desc: 'If checked, the user can set Min and Max IOPS. If not checked, the root administrator can define such values.',
        externalLink: ''
    },
    helpDiskOfferingDiskIopsMin: {
        desc: 'Appears only if Custom IOPS is not selected. Define the minimum volume IOPS.',
        externalLink: ''
    },
    helpDiskOfferingDiskIopsMax: {
        desc: 'Appears only if Custom IOPS is not selected. Define the maximum volume IOPS.',
        externalLink: ''
    },
    helpDiskOfferingStorageTags: {
        desc: 'Comma-separated list of attributes that should be associated with the primary storage for this disk. For example "ssd,blue".',
        externalLink: ''
    },
    helpDiskOfferingPublic: {
        desc: 'Yes makes the offering available to all domains. No limits the scope to a subdomain; you will be prompted for the subdomain\'s name.',
        externalLink: ''
    },
    helpDiskOfferingDomain: {
        desc: 'Select the subdomain in which this offering is available',
        externalLink: ''
    },
    // Add domain
    helpDomainName: {
        desc: 'Any desired name for the new sub-domain. Must be unique within the current domain.',
        externalLink: ''
    },
    helpDomainNetworkDomain: {
        desc: 'If you want to assign a special domain name to this domain\'s guest VM network, specify the DNS suffix',
        externalLink: ''
    },
    // Add F5
    helpF5IPAddress: {
        desc: 'The IP address of the device',
        externalLink: ''
    },
    helpF5Username: {
        desc: 'A user ID with valid authentication credentials that provide to access the device',
        externalLink: ''
    },
    helpF5Password: {
        desc: 'The password for the user ID provided in Username',
        externalLink: ''
    },
    helpF5Type: {
        desc: 'The type of device that is being added',
        externalLink: ''
    },
    helpF5PublicInterface: {
        desc: 'Interface of device that is configured to be part of the public network',
        externalLink: ''
    },
    helpF5PrivateInterface: {
        desc: 'Interface of device that is configured to be part of the private network',
        externalLink: ''
    },
    helpF5Retries: {
        desc: 'Number of times to attempt a command on the device before considering the operation failed. Default is 2.',
        externalLink: ''
    },
    helpF5Mode: {
        desc: 'Side by side mode is supported for the F5.',
        externalLink: ''
    },
    helpF5Dedicated: {
        desc: 'Check this box to dedicate the device to a single account. The value in the Capacity field will be ignored.',
        externalLink: ''
    },
    helpF5Capacity: {
        desc: 'Number of guest networks/accounts that will share this device',
        externalLink: ''
    },
    // Add guest network
    helpGuestNetworkName: {
        desc: 'The name of the network. This will be user-visible.',
        externalLink: ''
    },
    helpGuestNetworkDisplayText: {
        desc: 'The description of the network. This will be user-visible.',
        externalLink: ''
    },
    helpGuestNetworkZone: {
        desc: 'The name of the zone this network applies to. The administrator must configure the IP range for the guest networks in each zone.',
        externalLink: ''
    },
    helpGuestNetworkNetworkOffering: {
        desc: 'If the administrator has configured multiple network offerings, select the one you want to use for this network',
        externalLink: ''
    },
    helpGuestNetworkGateway: {
        desc: 'The gateway that the guests should use.',
        externalLink: ''
    },
    helpGuestNetworkNetmask: {
        desc: 'The netmask in use on the subnet the guests will use.',
        externalLink: ''
    },
    // Add guest network from zone
    helpGuestNetworkZoneName: {
        desc: 'The name of the network. This will be user-visible.',
        externalLink: ''
    },
    helpGuestNetworkZoneDescription: {
        desc: 'The description of the network. This will be user-visible.',
        externalLink: ''
    },
    helpGuestNetworkZoneVLANID: {
        desc: 'The VLAN tag for this network',
        externalLink: ''
    },
    helpGuestNetworkZoneScope: {
        desc: 'Scope',
        externalLink: ''
    },
    helpGuestNetworkZoneNetworkOffering: {
        desc: 'If the administrator has configured multiple network offerings, select the one you want to use for this network',
        externalLink: ''
    },
    helpGuestNetworkZoneGateway: {
        desc: 'The gateway that the guests should use.',
        externalLink: ''
    },
    helpGuestNetworkZoneNetmask: {
        desc: 'The netmask in use on the subnet the guests will use.',
        externalLink: ''
    },
    helpGuestNetworkZoneStartIP: {
        desc: 'The first IP address to define a range that can be assigned to guests. We strongly recommend the use of multiple NICs.',
        externalLink: ''
    },
    helpGuestNetworkZoneEndIP: {
        desc: 'The final IP address to define a range that can be assigned to guests. We strongly recommend the use of multiple NICs.',
        externalLink: ''
    },
    helpGuestNetworkZoneNetworkDomain: {
        desc: 'If you want to assign a special domain name to this guest VM network, specify the DNS suffix',
        externalLink: ''
    },
    // Add host
    helpHostZone: {
        desc: 'The zone where you want to add the host',
        externalLink: ''
    },
    helpHostPod: {
        desc: 'The pod where you want to add the host',
        externalLink: ''
    },
    helpHostCluster: {
        desc: 'The cluster where you want to add the host',
        externalLink: ''
    },
    helpHostName: {
        desc: 'The DNS name or IP address of the host',
        externalLink: ''
    },
    helpHostUsername: {
        desc: 'Usually root',
        externalLink: ''
    },
    helpHostPassword: {
        desc: 'The password for the user named in Username. The password was set during hypervisor installation on the host.',
        externalLink: ''
    },
    helpHostTags: {
        desc: 'Any labels that you use to categorize hosts for ease of maintenance or to enable HA.',
        externalLink: ''
    },
    // Add Netscaler
    helpNetScalerIPAddress: {
        desc: 'The IP address of the device',
        externalLink: ''
    },
    helpNetScalerUsername: {
        desc: 'A user ID with valid authentication credentials that provide to access the device',
        externalLink: ''
    },
    helpNetScalerPassword: {
        desc: 'The password for the user ID provided in Username',
        externalLink: ''
    },
    helpNetScalerType: {
        desc: 'The type of device that is being added',
        externalLink: ''
    },
    helpNetScalerPublicInterface: {
        desc: 'Interface of device that is configured to be part of the public network',
        externalLink: ''
    },
    helpNetScalerPrivateInterface: {
        desc: 'Interface of device that is configured to be part of the private network',
        externalLink: ''
    },
    helpNetScalerRetries: {
        desc: 'Number of times to attempt a command on the device before considering the operation failed. Default is 2.',
        externalLink: ''
    },
    helpNetScalerDedicated: {
        desc: 'Check this box to dedicate the device to a single account. The value in the Capacity field will be ignored.',
        externalLink: ''
    },
    helpNetScalerCapacity: {
        desc: 'Number of guest networks/accounts that will share this device',
        externalLink: ''
    },
    // Add network offering
    helpNetworkOfferingName: {
        desc: 'Any desired name for the network offering',
        externalLink: ''
    },
    helpNetworkOfferingDescription: {
        desc: 'A short description of the offering that can be displayed to users',
        externalLink: ''
    },
    helpNetworkOfferingNetworkRate: {
        desc: 'Allowed data transfer rate in megabits(Mb) per second',
        externalLink: ''
    },
    helpNetworkOfferingTrafficType: {
        desc: 'The type of network traffic that will be carried on the network',
        externalLink: ''
    },
    helpNetworkOfferingGuestType: {
        desc: 'Choose whether the guest network is isolated or shared.',
        externalLink: ''
    },
    helpNetworkOfferingSpecifyVLAN: {
        desc: '(Isolated guest networks only) Indicate whether a VLAN should be specified when this offering is used',
        externalLink: ''
    },
    helpNetworkOfferingVPC: {
        desc: 'Specify whether this offering is for a virtual private cloud',
        externalLink: ''
    },
    helpNetworkOfferingSystemOffering: {
        desc: 'Choose the system service offering that you want the virtual routers to use in this network',
        externalLink: ''
    },
    helpNetworkOfferingLBIsolation: {
        desc: 'Specify what type of load balancer isolation you want for the network: Shared or Dedicated',
        externalLink: ''
    },
    helpNetworkOfferingMode: {
        desc: 'Choose Inline or Side by Side to specify whether a firewall is placed in front of the load balancing device (inline) or in parallel with it (side-by-side)',
        externalLink: ''
    },
    helpNetworkOfferingAssociatePublicIP: {
        desc: 'Select this option if you want to assign a public IP address to the VMs deployed in the guest network',
        externalLink: ''
    },
    helpNetworkOfferingRedundantRouterCapability: {
        desc: 'Select this option if you want to use two virtual routers in the network for uninterrupted connection: one operating as the master virtual router and the other as the backup',
        externalLink: ''
    },
    helpNetworkOfferingConserveMode: {
        desc: 'Check this box to use conserve mode, where network resources are allocated only when the first VM starts. You can define more than one service on the same public IP only when conserve mode is on.',
        externalLink: ''
    },
    helpNetworkOfferingTags: {
        desc: 'Network tag to specify which physical network to use',
        externalLink: ''
    },
    // Add pod
    helpPodZone: {
        desc: 'The zone where you want to add the pod',
        externalLink: ''
    },
    helpPodName: {
        desc: 'Set a name for the pod',
        externalLink: ''
    },
    helpPodGateway: {
        desc: 'The gateway for the hosts in the pod',
        externalLink: ''
    },
    helpPodNetmask: {
        desc: 'The network prefix that defines the pod\'s subnet. Use CIDR notation.',
        externalLink: ''
    },
    helpPodStartIP: {
        desc: 'The first IP address to define a range in the management network that is used to manage various system VMs',
        externalLink: ''
    },
    helpPodEndIP: {
        desc: 'The last IP address to define a range in the management network that is used to manage various system VMs',
        externalLink: ''
    },
    // Add primary storage
    helpPrimaryStorageZone: {
        desc: 'The zone in which you want to create the primary storage',
        externalLink: ''
    },
    helpPrimaryStoragePod: {
        desc: 'The pod in which you want to create the primary storage',
        externalLink: ''
    },
    helpPrimaryStorageCluster: {
        desc: 'The cluster in which you want to create the primary storage',
        externalLink: ''
    },
    helpPrimaryStorageName: {
        desc: 'The name of the storage device',
        externalLink: ''
    },
    helpPrimaryStorageProtocol: {
        desc: 'For XenServer, choose NFS, iSCSI, or PreSetup. For KVM, choose NFS or SharedMountPoint. For vSphere, choose VMFS (iSCSI or FiberChannel) or NFS.',
        externalLink: ''
    },
    helpPrimaryStorageServer: {
        desc: 'NFS, iSCSI, or PreSetup: IP address or DNS name of the storage device. VMFS: IP address or DNS name of the vCenter server.',
        externalLink: ''
    },
    helpPrimaryStoragePath: {
        desc: 'NFS: exported path from the server. VMFS: /datacenter name/datastore name. SharedMountPoint: path where primary storage is mounted, such as "/mnt/primary"',
        externalLink: ''
    },
    helpPrimaryStorageSRNameLabel: {
        desc: 'The name-label of the SR that has been set up independently of the cloud management system',
        externalLink: ''
    },
    helpPrimaryStorageTargetIQN: {
        desc: 'In iSCSI, this is the IQN of the target. For example, iqn.1986-03.com.sun:02:01ec9bb549-1271378984',
        externalLink: ''
    },
    helpPrimaryStorageLun: {
        desc: 'In iSCSI, this is the LUN number. For example, 3.',
        externalLink: ''
    },
    helpPrimaryStorageTags: {
        desc: 'Comma-separated list of tags for this storage device. Must be the same set or a superset of the tags on your disk offerings.',
        externalLink: ''
    },
    // Add secondary storage
    helpSecondaryStorageZone: {
        desc: 'The zone in which you want to create the secondary storage',
        externalLink: ''
    },
    helpSecondaryStorageNFSServer: {
        desc: 'The IP address of the server',
        externalLink: ''
    },
    helpSecondaryStoragePath: {
        desc: 'The exported path from the server',
        externalLink: ''
    },
    // S3
    helpS3AccessKey: {
        desc: 'This identifies the S3 user account',
        externalLink: ''
    },
    helpS3SecretKey: {
        desc: 'The password matching the S3 Access Key',
        externalLink: ''
    },
    helpS3Bucket: {
        desc: 'The S3 bucket to store CloudStack data in. The bucket must be created and owned by the same user identified by the S3 Access Key',
        externalLink: ''
    },
    helpS3Endpoint: {
        desc: 'The S3 server to use. Non-standard ports can be appended to the hostname as per s3.amazonaws.com:8080',
        externalLink: ''
    },
    helpS3ConnectionTimeout: {
        desc: 'The number of milliseconds to wait when establishing an S3 connection. This is optional',
        externalLink: ''
    },
    helpS3MaxErrorRetry: {
        desc: 'The number of times to retry S3 requests before failing. This is optional',
        externalLink: ''
    },
    helpS3SocketTimeout: {
        desc: 'The number of milliseconds to wait while reading an S3 response. This is optional',
        externalLink: ''
    },
    helpNFSStagingServer: {
        desc: 'The name or IP address of the NFS secondary staging server',
        externalLink: ''
    },
    helpNFSStagingPath: {
        desc: 'The exported path to use on the NFS staging server',
        externalLink: ''
    },
    // Add SRX
    helpSRXIPAddress: {
        desc: 'The IP address of the device',
        externalLink: ''
    },
    helpSRXUsername: {
        desc: 'A user ID with valid authentication credentials that provide to access the device',
        externalLink: ''
    },
    helpSRXPassword: {
        desc: 'The password for the user ID provided in Username',
        externalLink: ''
    },
    helpSRXType: {
        desc: 'The type of device that is being added',
        externalLink: ''
    },
    helpSRXPublicInterface: {
        desc: 'Interface of device that is configured to be part of the public network. For example, ge-0/0/2',
        externalLink: ''
    },
    helpSRXPrivateInterface: {
        desc: 'Interface of device that is configured to be part of the private network. For example, ge-0/0/1',
        externalLink: ''
    },
    helpSRXUsageInterface: {
        desc: 'Interface used to meter traffic. If you don\'t want to use the public interface, specify a different interface name here.',
        externalLink: ''
    },
    helpSRXRetries: {
        desc: 'Number of times to attempt a command on the device before considering the operation failed. Default is 2.',
        externalLink: ''
    },
    helpSRXTimeout: {
        desc: 'The time to wait for a command on the SRX before considering it failed. Default is 300 seconds.',
        externalLink: ''
    },
    helpSRXMode: {
        desc: 'Side by side mode is supported for the SRX.',
        externalLink: ''
    },
    helpSRXPublicNetwork: {
        desc: 'The name of the public network on the SRX. For example, trust.',
        externalLink: ''
    },
    helpSRXPrivateNetwork: {
        desc: 'The name of the private network on the SRX. For example, untrust.',
        externalLink: ''
    },
    helpSRXDedicated: {
        desc: 'Check this box to dedicate the device to a single account. The value in the Capacity field will be ignored.',
        externalLink: ''
    },
    helpSRXCapacity: {
        desc: 'Number of guest networks/accounts that will share this device',
        externalLink: ''
    },
    // Add system service offering
    helpSystemOfferingName: {
        desc: 'Any desired name for the offering',
        externalLink: ''
    },
    helpSystemOfferingDescription: {
        desc: 'A short description of the offering that can be displayed to the root administrator',
        externalLink: ''
    },
    helpSystemOfferingVMType: {
        desc: 'The type of system VM that is being offered',
        externalLink: ''
    },
    helpSystemOfferingStorageType: {
        desc: 'Type of disk for the system VM. Local storage is attached to the host where the system VM is running. Shared storage is accessible via NFS.',
        externalLink: ''
    },
    helpSystemOfferingCPUCores: {
        desc: 'The number of cores which should be allocated to a system VM with this offering',
        externalLink: ''
    },
    helpSystemOfferingCPUMHz: {
        desc: 'The CPU speed of the cores that the system VM is allocated. For example, 2000 would provide for a 2 GHz clock.',
        externalLink: ''
    },
    helpSystemOfferingMemory: {
        desc: 'The amount of memory in megabytes to allocate for the system VM. For example, 2048 provides 2 GB RAM.',
        externalLink: ''
    },
    helpSystemOfferingNetworkRate: {
        desc: 'Allowed data transfer rate in megabits(Mb) per second',
        externalLink: ''
    },
    helpSystemOfferingDiskBytesReadRate: {
        desc: 'Allowed disk read rate in bytes per second',
        externalLink: ''
    },
    helpSystemOfferingDiskBytesWriteRate: {
        desc: 'Allowed disk write rate in bytes per second',
        externalLink: ''
    },
    helpSystemOfferingDiskIopsReadRate: {
        desc: 'Allowed disk read rate in I/O requests per second',
        externalLink: ''
    },
    helpSystemOfferingDiskIopsWriteRate: {
        desc: 'Allowed disk write rate in I/O requests per second',
        externalLink: ''
    },
    helpSystemOfferingHA: {
        desc: 'If yes, the administrator can choose to have the system VM be monitored and as highly available as possible',
        externalLink: ''
    },
    helpSystemOfferingStorageTags: {
        desc: 'Comma-separated list of attributes that should be associated with the primary storage used by the system VM. For example "ssd,blue".',
        externalLink: ''
    },
    helpSystemOfferingHostTags: {
        desc: 'Any tags that you use to organize your hosts',
        externalLink: ''
    },
    helpSystemOfferingCPUCap: {
        desc: 'If yes, the system will limit the level of CPU usage even if spare capacity is available',
        externalLink: ''
    },
    helpSystemOfferingPublic: {
        desc: 'Yes makes the offering available to all domains. No limits the scope to a subdomain; you will be prompted for the subdomain\'s name.',
        externalLink: ''
    },
    helpSystemOfferingDomain: {
        desc: 'Select the subdomain in which this offering is available',
        externalLink: ''
    },
    // Add tier
    helpTierName: {
        desc: 'A unique name for the tier',
        externalLink: ''
    },
    helpTierNetworkOffering: {
        desc: 'If the administrator has configured multiple network offerings, select the one you want to use for this tier',
        externalLink: ''
    },
    helpTierGateway: {
        desc: 'The gateway for the tier. Must be in the Super CIDR range of the VPC and not overlapping the CIDR of any other tier in this VPC.',
        externalLink: ''
    },
    helpTierNetmask: {
        desc: 'Netmask for the tier. For example, with VPC CIDR of 10.0.0.0/16 and network tier CIDR of 10.0.1.0/24, gateway is 10.0.1.1 and netmask is 255.255.255.0',
        externalLink: ''
    },
    // Add user
    helpUserUsername: {
        desc: 'Any desired user ID. Must be unique in the current domain. The same username can exist in other domains, including sub-domains.',
        externalLink: ''
    },
    helpUserPassword: {
        desc: 'Any desired user password',
        externalLink: ''
    },
    helpUserConfirmPassword: {
        desc: 'Type the same password again',
        externalLink: ''
    },
    helpUserEmail: {
        desc: 'The user\'s email address',
        externalLink: ''
    },
    helpUserFirstName: {
        desc: 'The user\'s first name, also known as the given name',
        externalLink: ''
    },
    helpUserLastName: {
        desc: 'The user\'s last name, also known as the family name',
        externalLink: ''
    },
    helpUserTimezone: {
        desc: 'Set the time zone that corresponds to the user\'s locale',
        externalLink: ''
    },
    // Add volume
    helpVolumeName: {
        desc: 'Give the volume a unique name so you can find it later.',
        externalLink: ''
    },
    helpVolumeAvailabilityZone: {
        desc: 'Where do you want the storage to reside? This should be close to the VM that will use the volume.',
        externalLink: ''
    },
    helpVolumeDiskOffering: {
        desc: 'Choose the characteristics of the storage.',
        externalLink: ''
    },
    // Add VPC
    helpVPCName: {
        desc: 'A name for the new VPC',
        externalLink: ''
    },
    helpVPCDescription: {
        desc: 'Display text about the VPC',
        externalLink: ''
    },
    helpVPCZone: {
        desc: 'Zone where you want the VPC to be available',
        externalLink: ''
    },
    helpVPCSuperCIDR: {
        desc: 'CIDR range for all the tiers within a VPC. Each tier\'s CIDR must be within the Super CIDR.',
        externalLink: ''
    },
    helpVPCDomain: {
        desc: 'If you want to assign a special domain name to this VPC\'s guest VM network, specify the DNS suffix',
        externalLink: ''
    },
    // Add VPC gateway
    helpVPCGatewayPhysicalNetwork: {
        desc: 'Name of a physical network that has been created in the zone',
        externalLink: ''
    },
    helpVPCGatewayVLAN: {
        desc: 'The VLAN associated with the VPC gateway',
        externalLink: ''
    },
    helpVPCGatewayIP: {
        desc: 'The IP address associated with the VPC gateway',
        externalLink: ''
    },
    helpVPCGatewayGateway: {
        desc: 'The gateway through which the traffic is routed to and from the VPC',
        externalLink: ''
    },
    helpVPCGatewayNetmask: {
        desc: 'The netmask associated with the VPC gateway',
        externalLink: ''
    },
    // Add VPN customer gateway
    helpVPNGatewayName: {
        desc: 'A unique name for the VPN customer gateway',
        externalLink: ''
    },
    helpVPNGatewayGateway: {
        desc: 'The IP address for the remote gateway',
        externalLink: ''
    },
    helpVPNGatewayCIDRList: {
        desc: 'The guest CIDR list of the remote subnets. Enter a CIDR or a comma-separated list. Do not overlap the VPC\'s CIDR or another guest CIDR.',
        externalLink: ''
    },
    helpVPNGatewayIPsecPresharedKey: {
        desc: 'Enter a secret key value. The endpoints of the VPN share a secret key. This is used to authenticate the customer gateway and the VPC VPN gateway to each other.',
        externalLink: ''
    },
    helpVPNGatewayIKEEncryption: {
        desc: 'Enter AES128, AES192, AES256, or 3DES to specify the Internet Key Exchange (IKE) policy for phase-1. Authentication is accomplished with Preshared Keys.',
        externalLink: ''
    },
    helpVPNGatewayIKEHash: {
        desc: 'Enter SHA1 or MD5 to specify the IKE hash algorithm for phase-1',
        externalLink: ''
    },
    helpVPNGatewayIKEDH: {
        desc: 'Enter Group-5 (1536-bit), Group-2 (1024-bit), or None to specify the public-key cryptography protocol to use. The 1536-bit Diffie-Hellman group is used within IKE to establish session keys.',
        externalLink: ''
    },
    helpVPNGatewayESPEncryption: {
        desc: 'Enter AES128, AES192, AES256, or 3DES to specify the Encapsulating Security Payload (ESP) algorithm within phase-2',
        externalLink: ''
    },
    helpVPNGatewayESPHash: {
        desc: 'Enter SHA1 or MD5 to specify the Encapsulating Security Payload (ESP) hash for phase-2',
        externalLink: ''
    },
    helpVPNGatewayPerfectForwardSecrecy: {
        desc: 'Choose Group-5 (1536-bit), Group-2 (1024-bit), or None to specify whether to enforce a new Diffie-Hellman key exchange and, if so, what size of DH group to use',
        externalLink: ''
    },
    helpVPNGatewayIKELifetime: {
        desc: 'The phase-1 lifetime of the security association in seconds. Whenever the time expires, a new phase-1 exchange is performed.',
        externalLink: ''
    },
    helpVPNGatewayESPLifetime: {
        desc: 'The phase-2 lifetime of the security association in seconds. Whenever the time expires, a re-key is initiated to provide a new IPsec encryption and authentication session keys.',
        externalLink: ''
    },
    helpVPNGatewayDeadPeerDetection: {
        desc: 'Check this to make the virtual router query its IKE peer at regular intervals to ensure continued availability. It is recommended to have the same DPD setting on both sides of the VPN connection.',
        externalLink: ''
    },
    // Copy template
    helpCopyTemplateDestination: {
        desc: 'The zone to which you want to copy the template',
        externalLink: ''
    },
    // Enter token
    helpEnterTokenProjectID: {
        desc: 'Unique identifying number for the project. Use the number you received in the invitation email',
        externalLink: ''
    },
    helpEnterTokenToken: {
        desc: 'Unique security code that authorizes you to accept the project invitation. Use the token you received in the invitation email',
        externalLink: ''
    },
    // Register template
    helpRegisterTemplate: {
        desc: '',
        externalLink: ''
    },
    // Register template
    helpRegisterTemplate: {
        desc: '',
        externalLink: ''
    },
    // Register ISO
    helpRegisterISOName: {
        desc: 'A unique name for the ISO. This will be visible to users, so choose something descriptive.',
        externalLink: ''
    },
    helpRegisterISODescription: {
        desc: 'Display text describing the ISO. This will be visible to users, so choose something descriptive.',
        externalLink: ''
    },
    helpRegisterISOURL: {
        desc: 'The Management Server will download the file from the specified URL, such as http://my.web.server/filename.iso',
        externalLink: ''
    },
    helpRegisterISOZone: {
        desc: 'Choose the zone where you want the ISO to be available, or All Zones to make it available throughout the cloud',
        externalLink: ''
    },
    helpRegisterISOBootable: {
        desc: 'Indicate whether the machine can be booted using this ISO',
        externalLink: ''
    },
    helpRegisterISOOSType: {
        desc: 'Operating system of the VM represented by the ISO. If the OS type of the ISO is not listed, choose Other.',
        externalLink: ''
    },
    helpRegisterISOExtractable: {
        desc: 'Whether the ISO is extractable or not',
        externalLink: ''
    },
    helpRegisterISOPublic: {
        desc: 'Check this to make the ISO accessible to all users. The ISO will appear in the Community ISOs list.',
        externalLink: ''
    },
    helpRegisterISOFeatured: {
        desc: 'Check this to make the ISO more prominent for users. The ISO will appear in the Featured ISOs list.',
        externalLink: ''
    },
    // Register template
    helpRegisterTemplateName: {
        desc: 'A unique name for the template. This will be visible to users, so choose something descriptive.',
        externalLink: ''
    },
    helpRegisterTemplateDescription: {
        desc: 'Display text describing the template. This will be visible to users, so choose something descriptive.',
        externalLink: ''
    },
    helpRegisterTemplateURL: {
        desc: 'The Management Server will download the file from the specified URL, such as http://my.web.server/filename.vhd.gz',
        externalLink: ''
    },
    helpRegisterTemplateZone: {
        desc: 'Choose the zone where you want the template to be available, or All Zones to make it available throughout the cloud',
        externalLink: ''
    },
    helpRegisterTemplateHypervisor: {
        desc: 'The hypervisor software from which this template is being imported; this determines the value of Format',
        externalLink: ''
    },
    helpRegisterTemplateFormat: {
        desc: 'The data format of the template upload file',
        externalLink: ''
    },
    helpRegisterTemplateOSType: {
        desc: 'Operating system of the VM represented by the template. If the OS type of the template is not listed, choose Other.',
        externalLink: ''
    },
    helpRegisterTemplateExtractable: {
        desc: 'Whether the template is extractable or not',
        externalLink: ''
    },
    helpRegisterTemplatePasswordEnabled: {
        desc: 'Check this if the template has the password change script installed.',
        externalLink: ''
    },
    helpRegisterTemplatePublic: {
        desc: 'Check this to make the template accessible to all users. The template will appear in the Community Templates list.',
        externalLink: ''
    },
    helpRegisterTemplateFeatured: {
        desc: 'Check this to make the template more prominent for users. The template will appear in the Featured Templates list.',
        externalLink: ''
    },
    // Upload volume
    helpUploadVolumeName: {
        desc: 'A unique name for the volume. This will be visible to users, so choose something descriptive.',
        externalLink: ''
    },
    helpUploadVolumeZone: {
        desc: 'Choose the zone where you want to store the volume. VMs running on hosts in this zone can attach the volume.',
        externalLink: ''
    },
    helpUploadVolumeFormat: {
        desc: 'The disk image format of the volume. XenServer is VHD, VMware is OVA, and KVM is QCOW2.',
        externalLink: ''
    },
    helpUploadVolumeURL: {
        desc: 'Secure HTTP or HTTPS URL that can be used to get the disk. File type must match Format. For example, if Format is VHD, http://yourFileServerIP/userdata/myDataDisk.vhd',
        externalLink: ''
    },
    helpUploadVolumeChecksum: {
        desc: 'Use the hash that you created at the start of the volume upload procedure',
        externalLink: ''
    }
};
