
routerAFC.addSC("aggregate-address", "Configure BGP aggregate entries");
	routerAFC["aggregate-address"].addSC("A.B.C.D", "Aggregate address");
		routerAFC["aggregate-address"]["A.B.C.D"].addSC("A.B.C.D", "Aggregate mask");
			routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"].addSC("advertise-map", "Set condition to advertise attribute");
				routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["advertise-map"].addSC("WORD", "Route map to control attribute advertisement");
			routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"].addSC("as-set", "Generate AS set path information");
				routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["as-set"].addSC("advertise-map", "Set condition to advertise attribute");
					routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["as-set"]["advertise-map"].addSC("WORD", "Route map to control attribute advertisement");
			routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"].addSC("attribute-map", "Set attributes of aggregate");
				routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["attribute-map"].addSC("WORD", "Route map for parameter control");
					routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["attribute-map"].WORD.addSC("advertise-map", "Set condition to advertise attribute");
						routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["attribute-map"].WORD["advertise-map"].addSC("WORD", "Route map to control attribute advertisement");
					routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["attribute-map"].WORD.addSC("as-set", "Generate AS set path information");
						routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["attribute-map"].WORD["as-set"].addSC("advertise-map", "Set condition to advertise attribute");
							routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["attribute-map"].WORD["as-set"]["advertise-map"].addSC("WORD", "Route map to control attribute advertisement");
			routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"].addSC("route-map", "Set parameters of aggregate");
				routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["route-map"].addSC("WORD", "Route map for parameter control");
					routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["route-map"].WORD.addSC("as-set", "Generate AS set path information");
			routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"].addSC("summary-only", "Filter more specific routes from updates");
				routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["summary-only"].addSC("advertise-map", "Set condition to advertise attribute");
					routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["summary-only"]["advertise-map"].addSC("WORD", "Route map to control attribute advertisement");
				routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["summary-only"].addSC("as-set", "Generate AS set path information");
					routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["summary-only"]["as-set"].addSC("advertise-map", "Set condition to advertise attribute");
						routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["summary-only"]["as-set"]["advertise-map"].addSC("WORD", "Route map to control attribute advertisement");
				routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["summary-only"].addSC("attribute-map", "Set attributes of aggregate");
					routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["summary-only"]["attribute-map"].addSC("WORD", "Route map for parameter control");
						routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["summary-only"]["attribute-map"].WORD.addSC("advertise-map", "Set condition to advertise attribute");
							routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["summary-only"]["attribute-map"].WORD["advertise-map"].addSC("WORD", "Route map to control attribute advertisement");
						routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["summary-only"]["attribute-map"].WORD.addSC("as-set", "Generate AS set path information");
							routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["summary-only"]["attribute-map"].WORD["as-set"].addSC("advertise-map", "Set condition to advertise attribute");
								routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["summary-only"]["attribute-map"].WORD["as-set"]["advertise-map"].addSC("WORD", "Route map to control attribute advertisement");
				routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["summary-only"].addSC("route-map", "Set parameters of aggregate");
					routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["summary-only"]["route-map"].addSC("WORD", "Route map for parameter control");
						routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["summary-only"]["route-map"].WORD.addSC("as-set", "Generate AS set path information");
			routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"].addSC("suppress-map", "Conditionally filter more specific routes from updates");
				routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].addSC("WORD", "Route map for suppression");
					routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD.addSC("advertise-map", "Set condition to advertise attribute");
						routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["advertise-map"].addSC("WORD", "Route map to control attribute advertisement");
					routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD.addSC("as-set", "Generate AS set path information");
						routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["as-set"].addSC("advertise-map", "Set condition to advertise attribute");
							routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["as-set"]["advertise-map"].addSC("WORD", "Route map to control attribute advertisement");
					routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD.addSC("attribute-map", "Set attributes of aggregate");
						routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["attribute-map"].addSC("WORD", "Route map for parameter control");
							routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["attribute-map"].WORD.addSC("advertise-map", "Set condition to advertise attribute");
								routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["attribute-map"].WORD["advertise-map"].addSC("WORD", "Route map to control attribute advertisement");
							routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["attribute-map"].WORD.addSC("as-set", "Generate AS set path information");
								routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["attribute-map"].WORD["as-set"].addSC("advertise-map", "Set condition to advertise attribute");
									routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["attribute-map"].WORD["as-set"]["advertise-map"].addSC("WORD", "Route map to control attribute advertisement");
					routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD.addSC("route-map", "Set parameters of aggregate");
						routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["route-map"].addSC("WORD", "Route map for parameter control");
							routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["route-map"].WORD.addSC("as-set", "Generate AS set path information");
					routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD.addSC("summary-only", "Filter more specific routes from updates");
						routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["summary-only"].addSC("advertise-map", "Set condition to advertise attribute");
							routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["summary-only"]["advertise-map"].addSC("WORD", "Route map to control attribute advertisement");
						routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["summary-only"].addSC("as-set", "Generate AS set path information");
							routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["summary-only"]["as-set"].addSC("advertise-map", "Set condition to advertise attribute");
								routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["summary-only"]["as-set"]["advertise-map"].addSC("WORD", "Route map to control attribute advertisement");
						routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["summary-only"].addSC("attribute-map", "Set attributes of aggregate");
							routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["summary-only"]["attribute-map"].addSC("WORD", "Route map for parameter control");
								routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["summary-only"]["attribute-map"].WORD.addSC("advertise-map", "Set condition to advertise attribute");
									routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["summary-only"]["attribute-map"].WORD["advertise-map"].addSC("WORD", "Route map to control attribute advertisement");
								routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["summary-only"]["attribute-map"].WORD.addSC("as-set", "Generate AS set path information");
									routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["summary-only"]["attribute-map"].WORD["as-set"].addSC("advertise-map", "Set condition to advertise attribute");
						routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["summary-only"].addSC("route-map", "Set parameters of aggregate");
							routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["summary-only"]["route-map"].addSC("WORD", "Route map for parameter control");
								routerAFC["aggregate-address"]["A.B.C.D"]["A.B.C.D"]["suppress-map"].WORD["summary-only"]["route-map"].WORD.addSC("as-set", "Generate AS set path information");
routerAFC.addSC("auto-summary", "Enable automatic network number summarization");
routerAFC.addSC("bgp", "BGP specific commands");
	routerAFC.bgp.addSC("always-compare-med", "Allow comparing MED from different neighbors");
	routerAFC.bgp.addSC("bestpath", "Change the default bestpath selection");
		routerAFC.bgp.bestpath.addSC("compare-routerid", "Compare router-id for identical EBGP paths");
		routerAFC.bgp.bestpath.addSC("med", "MED attribute");
	routerAFC.bgp.addSC("client-to-client", "Configure client to client route reflection");
		routerAFC.bgp["client-to-client"].addSC("reflection", "reflection of routes allowed");
	routerAFC.bgp.addSC("cluster-id", "Configure Route-Reflector Cluster-id");
		routerAFC.bgp["cluster-id"].addSC("<1-4294967295>", "Route-Reflector Cluster-id as 32 bit quantity");
		routerAFC.bgp["cluster-id"].addSC("A.B.C.D", "Route-Reflector Cluster-id in IP address format");
	routerAFC.bgp.addSC("confederation", "AS confederation parameters");
		routerAFC.bgp.confederation.addSC("identifier", "as number");
		routerAFC.bgp.confederation.addSC("peers", "Peer ASs in BGP confederation");
	routerAFC.bgp.addSC("dampening", "Enable route-flap dampening");
		routerAFC.bgp.dampening.addSC("<1-45>", "Half-life time for the penalty");
		routerAFC.bgp.dampening.addSC("route-map", "Route-map to specify criteria for dampening");
	routerAFC.bgp.addSC("default", "Configure BGP defaults");
		routerAFC.bgp["default"].addSC("ipv4-unicast", "Activate ipv4-unicast for a peer by default");
		routerAFC.bgp["default"].addSC("local-preference", "local preference (higher=more preferred)");
	routerAFC.bgp.addSC("deterministic-med", "Pick the best-MED path among paths advertised from the neighboring AS");
	routerAFC.bgp.addSC("fast-external-fallover", "Immediately reset session if a link to a directly connected external peer goes down");
	routerAFC.bgp.addSC("log-neighbor-changes", "Log neighbor up/down and reset reason");
	routerAFC.bgp.addSC("redistribute-internal", "Allow redistribution of iBGP into IGPs (dangerous)");
	routerAFC.bgp.addSC("router-id", "Override configured router identifier");
		routerAFC.bgp["router-id"].addSC("A.B.C.D", "Manually configured router identifier");
	routerAFC.bgp.addSC("scan-time", "Configure background scanner interval");
		routerAFC.bgp["scan-time"].addSC("<5-60>", "Scanner interval (seconds)");
routerAFC.addSC("default", "Set a command to its defaults");
	routerAFC["default"].addSC("aggregate-address", "Configure BGP aggregate entries");
		routerAFC["default"]["aggregate-address"].addSC("A.B.C.D", "Aggregate address");
	routerAFC["default"].addSC("auto-summary", "Enable automatic network number summarization");
	routerAFC["default"].addSC("bgp", "BGP specific commands");
		routerAFC["default"].bgp.addSC("always-compare-med", "Allow comparing MED from different neighbors");
		routerAFC["default"].bgp.addSC("bestpath", "Change the default bestpath selection");
		routerAFC["default"].bgp.addSC("client-to-client", "Configure client to client route reflection");
		routerAFC["default"].bgp.addSC("cluster-id", "Configure Route-Reflector Cluster-id");
		routerAFC["default"].bgp.addSC("confederation", "AS confederation parameters");
		routerAFC["default"].bgp.addSC("dampening", "Enable route-flap dampening");
		routerAFC["default"].bgp.addSC("default", "Configure BGP defaults");
		routerAFC["default"].bgp.addSC("deterministic-med", "Pick the best-MED path among paths advertised from the neighboring AS");
		routerAFC["default"].bgp.addSC("fast-external-fallover", "Immediately reset session if a link to a directly connected external peer goes down");
		routerAFC["default"].bgp.addSC("log-neighbor-changes", "Log neighbor up/down and reset reason");
		routerAFC["default"].bgp.addSC("redistribute-internal", "Allow redistribution of iBGP into IGPs (dangerous)");
		routerAFC["default"].bgp.addSC("router-id", "Override configured router identifier");
		routerAFC["default"].bgp.addSC("scan-time", "Configure background scanner interval");
routerAFC.addSC("default-information", "Control distribution of default information");
	routerAFC["default-information"].addSC("originate", "Distribute a default route");
routerAFC.addSC("default-metric", "Set metric of redistributed routes");
	routerAFC["default-metric"].addSC("<1-4294967295>", "Default metric");
routerAFC.addSC("distance", "Define an administrative distance");
	routerAFC.distance.addSC("<1-255>", "Administrative distance");
		routerAFC.distance["<1-255>"].addSC("A.B.C.D", "IP Source address");
	routerAFC.distance.addSC("bgp", "BGP distance");
		routerAFC.distance.bgp.addSC("<1-255>", "Distance for routes external to the AS");
routerAFC.addSC("distribute-list", "Filter networks in routing updates");
	routerAFC["distribute-list"].addSC("<1-199>", "IP access list number");
		routerAFC["distribute-list"]["<1-199>"].addSC("in", "Filter incoming routing updates");
		routerAFC["distribute-list"]["<1-199>"].addSC("out", "Filter outgoing routing updates");
	routerAFC["distribute-list"].addSC("<1300-2699>", "IP expanded access list number");
		routerAFC["distribute-list"]["<1300-2699>"].addSC("in", "Filter incoming routing updates");
		routerAFC["distribute-list"]["<1300-2699>"].addSC("out", "Filter outgoing routing updates");
	routerAFC["distribute-list"].addSC("WORD", "Access-list name");
		routerAFC["distribute-list"].WORD.addSC("in", "Filter incoming routing updates");
		routerAFC["distribute-list"].WORD.addSC("out", "Filter outgoing routing updates");
	routerAFC["distribute-list"].addSC("gateway", "Filtering incoming updates based on gateway");
		routerAFC["distribute-list"].gateway.addSC("WORD", "Name of an IP prefix-list");
	routerAFC["distribute-list"].addSC("prefix", "Filter prefixes in routing updates");
		routerAFC["distribute-list"].prefix.addSC("WORD", "Name of an IP prefix-list");
routerAFC.addSC("exit-address-family", "Exit from Address Family configuration mode");
routerAFC.addSC("help", "Description of the interactive help system");
routerAFC.addSC("maximum-paths", "Forward packets over multiple paths");
	routerAFC["maximum-paths"].addSC("<1-8>", "Number of paths");
routerAFC.addSC("neighbor", "Specify a neighbor router");
	routerAFC.neighbor.addSC("A.B.C.D", "Neighbor address");
		routerAFC.neighbor["A.B.C.D"].addSC("activate", "Enable the Address Family for this Neighbor");
		routerAFC.neighbor["A.B.C.D"].addSC("advertise-map", "specify route-map for conditional advertisement");
			routerAFC.neighbor["A.B.C.D"]["advertise-map"].addSC("WORD", "advertise route-map name");
				routerAFC.neighbor["A.B.C.D"]["advertise-map"].WORD.addSC("non-exist-map", "advertise prefix only if prefix in the condition does not exist");
					routerAFC.neighbor["A.B.C.D"]["advertise-map"].WORD["non-exist-map"].addSC("WORD", "condition route-map name");
		routerAFC.neighbor["A.B.C.D"].addSC("advertisement-interval", "Minimum interval between sending BGP routing updates");
			routerAFC.neighbor["A.B.C.D"]["advertisement-interval"].addSC("<0-600>", "time in seconds");
		routerAFC.neighbor["A.B.C.D"].addSC("allowas-in", "Accept as-path with my AS present in it");
			routerAFC.neighbor["A.B.C.D"]["allowas-in"].addSC("<1-10>", "Number of occurances of AS number");
		routerAFC.neighbor["A.B.C.D"].addSC("default-originate", "Originate default route to this neighbor");
			routerAFC.neighbor["A.B.C.D"]["default-originate"].addSC("route-map", "Route-map to specify criteria to originate default");
				routerAFC.neighbor["A.B.C.D"]["default-originate"]["route-map"].addSC("WORD", "route-map name");
		routerAFC.neighbor["A.B.C.D"].addSC("description", "Neighbor specific description");
			routerAFC.neighbor["A.B.C.D"].description.addSC("LINE", "Up to 80 characters describing this neighbor");
		routerAFC.neighbor["A.B.C.D"].addSC("distribute-list", "Filter updates to/from this neighbor");
			routerAFC.neighbor["A.B.C.D"]["distribute-list"].addSC("<1-199>", "IP access list number");
				routerAFC.neighbor["A.B.C.D"]["distribute-list"]["<1-199>"].addSC("in", "Filter incoming updates");
				routerAFC.neighbor["A.B.C.D"]["distribute-list"]["<1-199>"].addSC("out", "Filter outgoing updates");
			routerAFC.neighbor["A.B.C.D"]["distribute-list"].addSC("<1300-2699>", "IP access list number (expanded range)");
				routerAFC.neighbor["A.B.C.D"]["distribute-list"]["<1300-2699>"].addSC("in", "Filter incoming updates");
				routerAFC.neighbor["A.B.C.D"]["distribute-list"]["<1300-2699>"].addSC("out", "Filter outgoing updates");
			routerAFC.neighbor["A.B.C.D"]["distribute-list"].addSC("WORD", "IP Access-list name");
				routerAFC.neighbor["A.B.C.D"]["distribute-list"].WORD.addSC("in", "Filter incoming updates");
				routerAFC.neighbor["A.B.C.D"]["distribute-list"].WORD.addSC("out", "Filter outgoing updates");
		routerAFC.neighbor["A.B.C.D"].addSC("ebgp-multihop", "Allow EBGP neighbors not on directly connected networks");
			routerAFC.neighbor["A.B.C.D"]["ebgp-multihop"].addSC("<1-255>", "maximum hop count");
		routerAFC.neighbor["A.B.C.D"].addSC("filter-list", "Establish BGP filters");
			routerAFC.neighbor["A.B.C.D"]["filter-list"].addSC("<1-199>", "AS path access list");
				routerAFC.neighbor["A.B.C.D"]["filter-list"]["<1-199>"].addSC("in", "Filter incoming routes");
				routerAFC.neighbor["A.B.C.D"]["filter-list"]["<1-199>"].addSC("out", "Filter outgoing routes");
		routerAFC.neighbor["A.B.C.D"].addSC("local-as", "Specify a local-as number");
			routerAFC.neighbor["A.B.C.D"]["local-as"].addSC("<1-65535>", "AS number used as local AS");
		routerAFC.neighbor["A.B.C.D"].addSC("maximum-prefix", "Maximum number of prefix accept from this peer");
			routerAFC.neighbor["A.B.C.D"]["maximum-prefix"].addSC("<1-4294967295>", "maximum no. of prefix limit");
				routerAFC.neighbor["A.B.C.D"]["maximum-prefix"]["<1-4294967295>"].addSC("<1-100>", "Threshold value (%) at which to generate a warning msg");
				routerAFC.neighbor["A.B.C.D"]["maximum-prefix"]["<1-4294967295>"].addSC("warning-only", "Only give warning message when limit is exceeded");
		routerAFC.neighbor["A.B.C.D"].addSC("next-hop-propagate", "Propagate the next hop for this neighbor");
		routerAFC.neighbor["A.B.C.D"].addSC("next-hop-self", "Disable the next hop calculation for this neighbor");
		routerAFC.neighbor["A.B.C.D"].addSC("password", "Set a password");
			routerAFC.neighbor["A.B.C.D"].password.addSC("<0-7>", "Encryption type (0 to disable encryption, 7 for proprietary)");
			routerAFC.neighbor["A.B.C.D"].password.addSC("LINE", "The password");
		routerAFC.neighbor["A.B.C.D"].addSC("peer-group", "Member of the peer-group");
			routerAFC.neighbor["A.B.C.D"]["peer-group"].addSC("WORD", "peer-group name");
		routerAFC.neighbor["A.B.C.D"].addSC("prefix-list", "Filter updates to/from this neighbor");
			routerAFC.neighbor["A.B.C.D"]["prefix-list"].addSC("WORD", "Name of a prefix list");
				routerAFC.neighbor["A.B.C.D"]["prefix-list"].WORD.addSC("in", "Filter incoming updates");
				routerAFC.neighbor["A.B.C.D"]["prefix-list"].WORD.addSC("out", "Filter outgoing updates");
		routerAFC.neighbor["A.B.C.D"].addSC("remote-as", "Specify a BGP neighbor");
			routerAFC.neighbor["A.B.C.D"]["remote-as"].addSC("<1-65535>", "AS of remote neighbor");
		routerAFC.neighbor["A.B.C.D"].addSC("remove-private-AS", "Remove private AS number from outbound updates");
		routerAFC.neighbor["A.B.C.D"].addSC("route-map", "Apply route map to neighbor");
			routerAFC.neighbor["A.B.C.D"]["route-map"].addSC("WORD", "Name of route map");
				routerAFC.neighbor["A.B.C.D"]["route-map"].WORD.addSC("in", "Apply map to incoming routes");
				routerAFC.neighbor["A.B.C.D"]["route-map"].WORD.addSC("out", "Apply map to outbound routes");
		routerAFC.neighbor["A.B.C.D"].addSC("route-reflector-client", "Configure a neighbor as Route Reflector client");
		routerAFC.neighbor["A.B.C.D"].addSC("send-community", "Send Community attribute to this neighbor");
			routerAFC.neighbor["A.B.C.D"]["send-community"].addSC("both", "Send Standard and Extended Community attributes");
			routerAFC.neighbor["A.B.C.D"]["send-community"].addSC("extended", "Send Extended Community attribute");
			routerAFC.neighbor["A.B.C.D"]["send-community"].addSC("standard", "Send Standard Community attribute");
		routerAFC.neighbor["A.B.C.D"].addSC("shutdown", "Administratively shut down this neighbor");
		routerAFC.neighbor["A.B.C.D"].addSC("soft-reconfiguration", "Per neighbor soft reconfiguration");
			routerAFC.neighbor["A.B.C.D"]["soft-reconfiguration"].addSC("inbound", "Allow inbound soft reconfiguration for this neighbor");
		routerAFC.neighbor["A.B.C.D"].addSC("timers", "BGP per neighbor timers");
			routerAFC.neighbor["A.B.C.D"].timers.addSC("<1-4294967295>", "Keepalive interval");
				routerAFC.neighbor["A.B.C.D"].timers["<1-4294967295>"].addSC("<1-4294967295>", "Holdtime");
		routerAFC.neighbor["A.B.C.D"].addSC("unsuppress-map", "Route-map to selectively unsuppress suppressed routes");
			routerAFC.neighbor["A.B.C.D"]["unsuppress-map"].addSC("WORD", "Name of route map");
		routerAFC.neighbor["A.B.C.D"].addSC("update-source", "Source of routing updates");
			routerAFC.neighbor["A.B.C.D"]["update-source"].addSC("GE-WAN", "GigabitEthernetWAN IEEE 802.3z");
				routerAFC.neighbor["A.B.C.D"]["update-source"]["GE-WAN"].addSC("<1-6>", "GE-WAN interface number");
			routerAFC.neighbor["A.B.C.D"]["update-source"].addSC("GigabitEthernet", "GigabitEthernet IEEE 802.3z");
				routerAFC.neighbor["A.B.C.D"]["update-source"].GigabitEthernet.addSC("<1-6>", "GigabitEthernet interface number");
			routerAFC.neighbor["A.B.C.D"]["update-source"].addSC("Loopback", "Loopback interface");
				routerAFC.neighbor["A.B.C.D"]["update-source"].Loopback.addSC("<0-2147483647>", "Loopback interface number");
			routerAFC.neighbor["A.B.C.D"]["update-source"].addSC("Null", "Null interface");
				routerAFC.neighbor["A.B.C.D"]["update-source"].Null.addSC("<0-0>", "Null interface number");
			routerAFC.neighbor["A.B.C.D"]["update-source"].addSC("Vlan", "Catalyst Vlans");
				routerAFC.neighbor["A.B.C.D"]["update-source"].Vlan.addSC("<1-1001>", "Vlan interface number");
		routerAFC.neighbor["A.B.C.D"].addSC("version", "Set the BGP version to match a neighbor");
			routerAFC.neighbor["A.B.C.D"].version.addSC("<4-4>", "Neighbor's BGP version");
		routerAFC.neighbor["A.B.C.D"].addSC("weight", "Set default weight for routes from this neighbor");
			routerAFC.neighbor["A.B.C.D"].weight.addSC("<0-65535>", "default weight");
	routerAFC.neighbor.addSC("WORD", "Neighbor tag");
		routerAFC.neighbor.WORD.addSC("activate", "Enable the Address Family for this Neighbor");
		routerAFC.neighbor.WORD.addSC("advertise-map", "specify route-map for conditional advertisement");
			routerAFC.neighbor.WORD["advertise-map"].addSC("WORD", "advertise route-map name");
				routerAFC.neighbor.WORD["advertise-map"].WORD.addSC("non-exist-map", "advertise prefix only if prefix in the condition does not exist");
					routerAFC.neighbor.WORD["advertise-map"].WORD["non-exist-map"].addSC("WORD", "condition route-map name");
		routerAFC.neighbor.WORD.addSC("advertisement-interval", "Minimum interval between sending BGP routing updates");
			routerAFC.neighbor.WORD["advertisement-interval"].addSC("<0-600>", "time in seconds");
		routerAFC.neighbor.WORD.addSC("allowas-in", "Accept as-path with my AS present in it");
			routerAFC.neighbor.WORD["allowas-in"].addSC("<1-10>", "Number of occurances of AS number");
		routerAFC.neighbor.WORD.addSC("default-originate", "Originate default route to this neighbor");
			routerAFC.neighbor.WORD["default-originate"].addSC("route-map", "Route-map to specify criteria to originate default");
				routerAFC.neighbor.WORD["default-originate"]["route-map"].addSC("WORD", "route-map name");
		routerAFC.neighbor.WORD.addSC("description", "Neighbor specific description");
			routerAFC.neighbor.WORD.description.addSC("LINE", "Up to 80 characters describing this neighbor");
		routerAFC.neighbor.WORD.addSC("distribute-list", "Filter updates to/from this neighbor");
			routerAFC.neighbor.WORD["distribute-list"].addSC("<1-199>", "IP access list number");
				routerAFC.neighbor.WORD["distribute-list"]["<1-199>"].addSC("in", "Filter incoming updates");
				routerAFC.neighbor.WORD["distribute-list"]["<1-199>"].addSC("out", "Filter outgoing updates");
			routerAFC.neighbor.WORD["distribute-list"].addSC("<1300-2699>", "IP access list number (expanded range)");
				routerAFC.neighbor.WORD["distribute-list"]["<1300-2699>"].addSC("in", "Filter incoming updates");
				routerAFC.neighbor.WORD["distribute-list"]["<1300-2699>"].addSC("out", "Filter outgoing updates");
			routerAFC.neighbor.WORD["distribute-list"].addSC("WORD", "IP Access-list name");
				routerAFC.neighbor.WORD["distribute-list"].WORD.addSC("in", "Filter incoming updates");
				routerAFC.neighbor.WORD["distribute-list"].WORD.addSC("out", "Filter outgoing updates");
		routerAFC.neighbor.WORD.addSC("ebgp-multihop", "Allow EBGP neighbors not on directly connected networks");
			routerAFC.neighbor.WORD["ebgp-multihop"].addSC("<1-255>", "maximum hop count");
		routerAFC.neighbor.WORD.addSC("filter-list", "Establish BGP filters");
			routerAFC.neighbor.WORD["filter-list"].addSC("<1-199>", "AS path access list");
				routerAFC.neighbor.WORD["filter-list"]["<1-199>"].addSC("in", "Filter incoming routes");
				routerAFC.neighbor.WORD["filter-list"]["<1-199>"].addSC("out", "Filter outgoing routes");
		routerAFC.neighbor.WORD.addSC("local-as", "Specify a local-as number");
			routerAFC.neighbor.WORD["local-as"].addSC("<1-65535>", "AS number used as local AS");
		routerAFC.neighbor.WORD.addSC("maximum-prefix", "Maximum number of prefix accept from this peer");
			routerAFC.neighbor.WORD["maximum-prefix"].addSC("<1-4294967295>", "maximum no. of prefix limit");
				routerAFC.neighbor.WORD["maximum-prefix"]["<1-4294967295>"].addSC("<1-100>", "Threshold value (%) at which to generate a warning msg");
				routerAFC.neighbor.WORD["maximum-prefix"]["<1-4294967295>"].addSC("warning-only", "Only give warning message when limit is exceeded");
		routerAFC.neighbor.WORD.addSC("next-hop-propagate", "Propagate the next hop for this neighbor");
		routerAFC.neighbor.WORD.addSC("next-hop-self", "Disable the next hop calculation for this neighbor");
		routerAFC.neighbor.WORD.addSC("password", "Set a password");
			routerAFC.neighbor.WORD.password.addSC("<0-7>", "Encryption type (0 to disable encryption, 7 for proprietary)");
			routerAFC.neighbor.WORD.password.addSC("LINE", "The password");
		routerAFC.neighbor.WORD.addSC("peer-group", "Configure peer-group");
		routerAFC.neighbor.WORD.addSC("prefix-list", "Filter updates to/from this neighbor");
			routerAFC.neighbor.WORD["prefix-list"].addSC("WORD", "Name of a prefix list");
				routerAFC.neighbor.WORD["prefix-list"].WORD.addSC("in", "Filter incoming updates");
				routerAFC.neighbor.WORD["prefix-list"].WORD.addSC("out", "Filter outgoing updates");
		routerAFC.neighbor.WORD.addSC("remote-as", "Specify a BGP neighbor");
			routerAFC.neighbor.WORD["remote-as"].addSC("<1-65535>", "AS of remote neighbor");
		routerAFC.neighbor.WORD.addSC("remove-private-AS", "Remove private AS number from outbound updates");
		routerAFC.neighbor.WORD.addSC("route-map", "Apply route map to neighbor");
			routerAFC.neighbor.WORD["route-map"].addSC("WORD", "Name of route map");
				routerAFC.neighbor.WORD["route-map"].WORD.addSC("in", "Apply map to incoming routes");
				routerAFC.neighbor.WORD["route-map"].WORD.addSC("out", "Apply map to outbound routes");
		routerAFC.neighbor.WORD.addSC("route-reflector-client", "Configure a neighbor as Route Reflector client");
		routerAFC.neighbor.WORD.addSC("send-community", "Send Community attribute to this neighbor");
			routerAFC.neighbor.WORD["send-community"].addSC("both", "Send Standard and Extended Community attributes");
			routerAFC.neighbor.WORD["send-community"].addSC("extended", "Send Extended Community attribute");
			routerAFC.neighbor.WORD["send-community"].addSC("standard", "Send Standard Community attribute");
		routerAFC.neighbor.WORD.addSC("shutdown", "Administratively shut down this neighbor");
		routerAFC.neighbor.WORD.addSC("soft-reconfiguration", "Per neighbor soft reconfiguration");
			routerAFC.neighbor.WORD["soft-reconfiguration"].addSC("inbound", "Allow inbound soft reconfiguration for this neighbor");
		routerAFC.neighbor.WORD.addSC("timers", "BGP per neighbor timers");
			routerAFC.neighbor.WORD.timers.addSC("<1-4294967295>", "Keepalive interval");
				routerAFC.neighbor.WORD.timers["<1-4294967295>"].addSC("<1-4294967295>", "Holdtime");
		routerAFC.neighbor.WORD.addSC("unsuppress-map", "Route-map to selectively unsuppress suppressed routes");
			routerAFC.neighbor.WORD["unsuppress-map"].addSC("WORD", "Name of route map");
		routerAFC.neighbor.WORD.addSC("update-source", "Source of routing updates");
			routerAFC.neighbor.WORD["update-source"].addSC("GE-WAN", "GigabitEthernetWAN IEEE 802.3z");
				routerAFC.neighbor.WORD["update-source"]["GE-WAN"].addSC("<1-6>", "GE-WAN interface number");
			routerAFC.neighbor.WORD["update-source"].addSC("GigabitEthernet", "GigabitEthernet IEEE 802.3z");
				routerAFC.neighbor.WORD["update-source"].GigabitEthernet.addSC("<1-6>", "GigabitEthernet interface number");
			routerAFC.neighbor.WORD["update-source"].addSC("Loopback", "Loopback interface");
				routerAFC.neighbor.WORD["update-source"].Loopback.addSC("<0-2147483647>", "Loopback interface number");
			routerAFC.neighbor.WORD["update-source"].addSC("Null", "Null interface");
				routerAFC.neighbor.WORD["update-source"].Null.addSC("<0-0>", "Null interface number");
			routerAFC.neighbor.WORD["update-source"].addSC("Vlan", "Catalyst Vlans");
				routerAFC.neighbor.WORD["update-source"].Vlan.addSC("<1-1001>", "Vlan interface number");
		routerAFC.neighbor.WORD.addSC("version", "Set the BGP version to match a neighbor");
			routerAFC.neighbor.WORD.version.addSC("<4-4>", "Neighbor's BGP version");
		routerAFC.neighbor.WORD.addSC("weight", "Set default weight for routes from this neighbor");
			routerAFC.neighbor.WORD.weight.addSC("<0-65535>", "default weight");
routerAFC.addSC("network", "Specify a network to announce via BGP");
	routerAFC.network.addSC("A.B.C.D", "Network number");
		routerAFC.network["A.B.C.D"].addSC("backdoor", "Specify a BGP backdoor route");
		routerAFC.network["A.B.C.D"].addSC("mask", "Network mask");
			routerAFC.network["A.B.C.D"].mask.addSC("A.B.C.D", "Network mask");
				routerAFC.network["A.B.C.D"].mask["A.B.C.D"].addSC("backdoor", "Specify a BGP backdoor route");
		routerAFC.network["A.B.C.D"].addSC("route-map", "Route-map to modify the attributes");
			routerAFC.network["A.B.C.D"]["route-map"].addSC("WORD", "Name of the route map");
				routerAFC.network["A.B.C.D"]["route-map"].WORD.addSC("backdoor", "Specify a BGP backdoor route");
routerAFC.addSC("no", "Negate a command or set its defaults");
	routerAFC.no.addSC("aggregate-address", "Configure BGP aggregate entries");
		routerAFC.no["aggregate-address"].addSC("A.B.C.D", "Aggregate address");
	routerAFC.no.addSC("auto-summary", "Enable automatic network number summarization");
	routerAFC.no.addSC("bgp", "BGP specific commands");
		routerAFC.no.bgp.addSC("always-compare-med", "Allow comparing MED from different neighbors");
		routerAFC.no.bgp.addSC("bestpath", "Change the default bestpath selection");
		routerAFC.no.bgp.addSC("client-to-client", "Configure client to client route reflection");
		routerAFC.no.bgp.addSC("cluster-id", "Configure Route-Reflector Cluster-id");
		routerAFC.no.bgp.addSC("confederation", "AS confederation parameters");
		routerAFC.no.bgp.addSC("dampening", "Enable route-flap dampening");
		routerAFC.no.bgp.addSC("default", "Configure BGP defaults");
		routerAFC.no.bgp.addSC("deterministic-med", "Pick the best-MED path among paths advertised from the neighboring AS");
		routerAFC.no.bgp.addSC("fast-external-fallover", "Immediately reset session if a link to a directly connected external peer goes down");
		routerAFC.no.bgp.addSC("log-neighbor-changes", "Log neighbor up/down and reset reason");
		routerAFC.no.bgp.addSC("redistribute-internal", "Allow redistribution of iBGP into IGPs (dangerous)");
		routerAFC.no.bgp.addSC("router-id", "Override configured router identifier");
		routerAFC.no.bgp.addSC("scan-time", "Configure background scanner interval");
	routerAFC.no.addSC("default-information", "Control distribution of default information");
		routerAFC.no["default-information"].addSC("originate", "Distribute a default route");
	routerAFC.no.addSC("default-metric", "Set metric of redistributed routes");
	routerAFC.no.addSC("distance", "Define an administrative distance");
		routerAFC.no.distance.addSC("<1-255>", "Administrative distance");
		routerAFC.no.distance.addSC("bgp", "BGP distance");
	routerAFC.no.addSC("distribute-list", "Filter networks in routing updates");
		routerAFC.no["distribute-list"].addSC("<1-199>", "IP access list number");
		routerAFC.no["distribute-list"].addSC("<1300-2699>", "IP expanded access list number");
		routerAFC.no["distribute-list"].addSC("WORD", "Access-list name");
		routerAFC.no["distribute-list"].addSC("gateway", "Filtering incoming updates based on gateway");
		routerAFC.no["distribute-list"].addSC("prefix", "Filter prefixes in routing updates");
	routerAFC.no.addSC("help", "Description of the interactive help system");
	routerAFC.no.addSC("maximum-paths", "Forward packets over multiple paths");
	routerAFC.no.addSC("neighbor", "Specify a neighbor router");
		routerAFC.no.neighbor.addSC("A.B.C.D", "Neighbor address");
		routerAFC.no.neighbor.addSC("WORD", "Neighbor tag");
	routerAFC.no.addSC("network", "Specify a network to announce via BGP");
		routerAFC.no.network.addSC("A.B.C.D", "Network number");
routerAFC.addSC("redistribute", "Redistribute information from another routing protocol");
	routerAFC.redistribute.addSC("bgp", "Border Gateway Protocol (BGP)");
		routerAFC.redistribute.bgp.addSC("<1-65535>", "Autonomous system number");
	routerAFC.redistribute.addSC("connected", "Connected");
		routerAFC.redistribute.connected.addSC("metric", "Metric for redistributed routes");
		routerAFC.redistribute.connected.addSC("route-map", "Route map reference");
	routerAFC.redistribute.addSC("dvmrp", "Redistribution of DVMRP into BGP IPv4 Multicast");
		routerAFC.redistribute.dvmrp.addSC("route-map", "Route map reference");
	routerAFC.redistribute.addSC("egp", "Exterior Gateway Protocol (EGP)");
		routerAFC.redistribute.egp.addSC("<0-65535>", "Remote autonomous system number");
	routerAFC.redistribute.addSC("eigrp", "Enhanced Interior Gateway Routing Protocol (EIGRP)");
		routerAFC.redistribute.eigrp.addSC("<1-65535>", "Autonomous system number");
	routerAFC.redistribute.addSC("igrp", "Interior Gateway Routing Protocol (IGRP)");
		routerAFC.redistribute.igrp.addSC("<1-65535>", "Autonomous system number");
	routerAFC.redistribute.addSC("isis", "ISO IS-IS");
		routerAFC.redistribute.isis.addSC("level-1", "IS-IS level-1 routes only");
		routerAFC.redistribute.isis.addSC("level-1-2", "IS-IS level-1 and level-2 routes");
		routerAFC.redistribute.isis.addSC("level-2", "IS-IS level-2 routes only");
		routerAFC.redistribute.isis.addSC("metric", "Metric for redistributed routes");
		routerAFC.redistribute.isis.addSC("route-map", "Route map reference");
		routerAFC.redistribute.isis.addSC("WORD", "ISO routing area tag");
	routerAFC.redistribute.addSC("iso-igrp", "IGRP for OSI networks");
		routerAFC.redistribute["iso-igrp"].addSC("route-map", "Route map reference");
		routerAFC.redistribute["iso-igrp"].addSC("WORD", "ISO routing area tag");
	routerAFC.redistribute.addSC("mobile", "Mobile routes");
		routerAFC.redistribute.mobile.addSC("metric", "Metric for redistributed routes");
		routerAFC.redistribute.mobile.addSC("route-map", "Route map reference");
	routerAFC.redistribute.addSC("odr", "On Demand stub Routes");
		routerAFC.redistribute.odr.addSC("metric", "Metric for redistributed routes");
		routerAFC.redistribute.odr.addSC("route-map", "Route map reference");
	routerAFC.redistribute.addSC("ospf", "Open Shortest Path First (OSPF)");
		routerAFC.redistribute.ospf.addSC("<1-65535>", "Process ID");
	routerAFC.redistribute.addSC("rip", "Routing Information Protocol (RIP)");
		routerAFC.redistribute.rip.addSC("metric", "Metric for redistributed routes");
		routerAFC.redistribute.rip.addSC("route-map", "Route map reference");
	routerAFC.redistribute.addSC("static", "Static routes");
		routerAFC.redistribute.static.addSC("metric", "Metric for redistributed routes");
		routerAFC.redistribute.static.addSC("route-map", "Route map reference");
routerAFC.addSC("synchronization", "Perform IGP synchronization");
routerAFC.addSC("table-map", "Map external entry attributes into routing table");
	routerAFC["table-map"].addSC("WORD", "route-map name");
