local p = {}  -- Define categories  -- All sortkeys have been guessed. They may be changed by common sense -- or consensus at Wikipedia talk:WikiProject Tropical cyclones local cats = { 	-- 	--  TROPICAL CYCLONES 	-- 	severe = { 		color = "C0FFC0", 		name = "Severe tropical storm", 		sortkey = 120, 		icon = "18px" 	}, 	mtstorm = { 		 color = "4DFFFF", -- Old  did not support. Value guessed. 		 name = "Moderate tropical storm", 		 sortkey = 105, 		 icon = "18px" 	}, 	storm = { 		color = "4DFFFF", 		name = "Tropical storm", 		sortkey = 100, 		icon = "18px" 	}, 	severedep = { 		color = "6EC1EA", -- Old  did not support. Value guessed. 		name = "Severe tropical depression", 		sortkey = 120 	}, 	moddepression = { 		color = "6EC1EA", -- Old  did not support. Value guessed. 		name = "Moderate tropical depression", 		sortkey = 95 	}, 	depression = { 		color = "6EC1EA", 		name = "Tropical depression", 		sortkey = 90, 		icon = "25px" 	}, 	disturbance = { 		color = "1591DE", 		name = "Tropical disturbance", 		sortkey = 80, 		icon = "25px" 	}, 	subtropicalcyclone = { 		color = "4DFFFF", 		name = "Subtropical cyclone", 		sortkey = 70 	}, 	subtropical = { 		color = "4DFFFF", 		name = "Subtropical storm", 		sortkey = 65, 		icon = "18px" 	}, 	subdepression = { 		color = "6EC1EA", 		name = "Subtropical depression", 		sortkey = 62, 		icon = "25px" 	}, 	overland = { 		color = "6EC1EA", 		name = "Overland depression", 		sortkey = 60, 		icon = "25px" 	}, 	subdisturbance = { 		color = "1591DE", 		name = "Subtropical disturbance", 		sortkey = 55, 		icon = "25px" 	}, 	extratropical = { 		color = "CCCCCC", 		name = "Extratropical cyclone", 		sortkey = 50, 		icon = "18px" 	}, 	monsoondepression = { 		color = "6EC1EA", 		name = "Monsoon depression", 		sortkey = 30, 		icon = "25px" 	}, 	potential = { 		color = "1591DE", 		name = "Potential tropical cyclone", 		sortkey = 25, 		icon = "25px" 	}, 	posttropical = { 		color = "CCCCCC", 		name = "Post-tropical depression", 		sortkey = 70, 		icon = "25px" 	}, 	remnant = { 		color = "CCCCCC", 		name = "Post-tropical depression", 		sortkey = 70, 		icon = "25px" 	}, 	unknown = { 		color = "C0C0C0", 		name = "Unknown-strength storm", 		sortkey = 0, 		icon = "?" 	}, 	-- SSWHS hurricane categories 	cat5 = { 		color = "A188FC", 		name = { 			atl = "Category 5 hurricane", 			epac = "Category 5 hurricane", 			satl = "Category 5 hurricane", 			wpac = "Category 5-equivalent super typhoon", 			default = "Category 5-equivalent tropical cyclone" 		}, 		sortkey = 80050, 		icon = "18px" 	}, 	cat4 = { 		color = "FF738A", 		name = { 			atl = "Category 4 hurricane", 			epac = "Category 4 hurricane", 			satl = "Category 4 hurricane", 			wpac = "Category 4-equivalent typhoon", 			default = "Category 4-equivalent tropical cyclone" 		}, 		sortkey = 80040, 		icon = "18px" 	}, 	cat3 = { 		color = "FF9E59", 		name = { 			atl = "Category 3 hurricane", 			epac = "Category 3 hurricane", 			satl = "Category 3 hurricane", 			wpac = "Category 3-equivalent typhoon", 			default = "Category 3-equivalent tropical cyclone" 		}, 		sortkey = 80030, 		icon = "18px" 	}, 	cat2 = { 		color = "FFD98C", 		name = { 			atl = "Category 2 hurricane", 			epac = "Category 2 hurricane", 			satl = "Category 2 hurricane", 			wpac = "Category 2-equivalent typhoon", 			default = "Category 2-equivalent tropical cyclone" 		}, 		sortkey = 80020, 		icon = "18px" 	}, 	cat1 = { 		color = "FFFFD9", 		name = { 			atl = "Category 1 hurricane", 			epac = "Category 1 hurricane", 			satl = "Category 1 hurricane", 			wpac = "Category 1-equivalent typhoon", 			default = "Category 1-equivalent tropical cyclone" 		}, 		sortkey = 80010, 		icon = "18px" 	}, 	supertyphoon = { 		color = "FF738A", 		name = "Category 4-equivalent super typhoon", 		sortkey = 80045, 		icon = "18px" 	}, 	typhoon = { 		color = "FFD98C", 		name = "Typhoon", 		sortkey = 60010 	}, 	-- HKO 	svtyphoon = { 		color = "FF738A", 		name = "Severe typhoon", 		sortkey = 60015 	}, 	vstyphoon = { 		color = "FF738A", 		name = "Very strong typhoon", 		sortkey = 60020, 		icon = "18px" 	}, 	vityphoon = { 		color = "A188FC", 		name = "Violent typhoon", 		sortkey = 60030, 		icon = "18px" 	}, 	-- PAGASA 	styphoon = { 		color = "A188FC", 		name = "Supertyphoon", 		sortkey = 60050 	}, 	sprcyclstorm = { 		color = "A188FC", 		name = "Super cyclonic storm", 		sortkey = 50020, 		icon = "18px" 	}, 	esvrcyclstorm = { 		color = "FF738A", 		name = "Extremely severe cyclonic storm", 		sortkey = 50015, 		icon = "18px" 	}, 	vsvrcyclstorm = { 		color = "FFD98C", 		name = "Very severe cyclonic storm", 		sortkey = 50010, 		icon = "18px" 	}, 	svrcyclstorm = { 		color = "C0FFC0", 		name = "Severe cyclonic storm", 		sortkey = 50008, 		icon = "18px" 	}, 	niocyclone = { 		color = "4DFFFF", 		name = "Cyclonic storm", 		sortkey = 50006, 		icon = "18px" 	}, 	deepdepression = { 		color = "6EC1EA", 		name = "Deep depression", 		sortkey = 50002, 		icon = "25px" 	}, 	niodepression = { 		color = "1591DE", 		name = "Depression", 		sortkey = 50001, 		icon = "25px" 	}, 	nioland = { 		color = "1591DE", 		name = "Land depression", 		sortkey = 50000, 		icon = "25px" 	}, 	aus5 = { 		color = "A188FC", 		name = "Category 5 severe tropical cyclone", 		sortkey = 40015, 		icon = "18px" 	}, 	aus4 = { 		color = "FF738A", 		name = "Category 4 severe tropical cyclone", 		sortkey = 40013, 		icon = "18px" 	}, 	aus3 = { 		color = "FFD98C", 		name = "Category 3 severe tropical cyclone", 		sortkey = 40010, 		icon = "18px" 	}, 	aus2 = { 		color = "C0FFC0", 		name = "Category 2 tropical cyclone", 		sortkey = 40008, 		icon = "18px" 	}, 	aus1 = { 		color = "4DFFFF", 		name = "Category 1 tropical cyclone", 		sortkey = 40006, 		icon = "18px" 	}, 	low = { 		color = "6EC1EA", 		name = "Tropical low", 		sortkey = 40002, 		icon = "25px" 	}, 	sublow = { 		color = "6EC1EA", 		name = "Subtropical low", 		sortkey = 40000 	}, 	vintense = { 		color = "A188FC", 		name = "Very intense tropical cyclone", 		sortkey = 30010, 		icon = "18px" 	}, 	intense = { 		color = "FF738A", 		name = "Intense tropical cyclone", 		sortkey = 30008, 		icon = "18px" 	}, 	tropicalcyclone = { 		color = "FFD98C", 		name = "Tropical cyclone", 		sortkey = 30006, 		icon = "TC" 	}, 	mstorm = { 		color = "4DFFFF", 		name = "Moderate tropical storm", 		sortkey = 30004, 		icon = "18px" 	}, 	zodw = { 		color = "1591DE", 		name = "Zone of disturbed weather", 		sortkey = 30000, 		icon = "25px" 	}, 	shemsvrtc = { 		color = "FFD98C", 		name = "Severe tropical cyclone", 		sortkey = 20020 	}, 	shem5 = { 		color = "A188FC", 		name = "Severe tropical cyclone", 		sortkey = 20010 	}, 	shem4 = { 		color = "FFD98C", 		name = "Tropical cyclone", 		sortkey = 20008 	}, 	shem2 = { 		color = "C0FFC0", 		name = "Tropical cyclone", 		sortkey = 20008 	}, 	shem1 = { 		color = "4DFFFF", 		name = "Tropical cyclone", 		sortkey = 20008 	}, 	-- 	-- WINTER STORMS 	-- 	-- Regional Snowfall Index 	rsi0 = { 		color = "CCCCCC", 		name = "Category 0 \"Nuisance\"", 		sortkey = 80100, 		icon = "25px" 	}, 	rsi1 = { 		color = "FFFFD9", 		name = "Category 1 \"Notable\"", 		sortkey = 80110, 		icon = "25px" 	}, 	rsi2 = { 		color = "FFD98C", 		name = "Category 2 \"Minor\"", 		sortkey = 80120, 		icon = "25px" 	}, 	rsi3 = { 		color = "FF9E59", 		name = "Category 3 \"Major\"", 		sortkey = 80130, 		icon = "25px" 	}, 	rsi4 = { 		color = "FF738A", 		name = "Category 4 \"Crippling\"", 		sortkey = 80140, 		icon = "25px" 	}, 	rsi5 = { 		color = "A188FC", 		name = "Category 5 \"Extreme\"", 		sortkey = 80150, 		icon = "25px" 	}, 	-- Winter Storm Severity Index 	wssinone = { 		color = "CCCCCC", 		name = "No impacts", 		sortkey = 80200, 	}, 	wssilimited = { 		color = "1591DE", 		name = "Limited impacts", 		sortkey = 80210, 	}, 	wssiminor = { 		color = "FFFFD9", 		name = "Minor impacts", 		sortkey = 80220, 	}, 	wssimoderate = { 		color = "FF9E59", 		name = "Moderate impacts", 		sortkey = 80230, 	}, 	wssimajor = { 		color = "FF738A", 		name = "Major impacts", 		sortkey = 80240, 	}, 	wssiextreme = { 		color = "A188FC", 		name = "Extreme impacts", 		sortkey = 80250, 	}, 	spia0 = { 		color = "4DFFFF", 		name = "Ice Damage Index: 0", 		sortkey = 80300, 		icon = "30px" 	}, 	spia1 = { 		color = "FFFFD9", 		name = "Ice Damage Index: 1", 		sortkey = 80301, 		icon = "30px" 	}, 	spia2 = { 		color = "FFD98C", 		name = "Ice Damage Index: 2", 		sortkey = 80302, 		icon = "30px" 	}, 	spia3 = { 		color = "FF9E59", 		name = "Ice Damage Index: 3", 		sortkey = 80303, 		icon = "30px" 	}, 	spia4 = { 		color = "FF738A", 		name = "Ice Damage Index: 4", 		sortkey = 80304, 		icon = "30px" 	}, 	spia5 = { 		color = "A188FC", 		name = "Ice Damage Index: 5", 		sortkey = 80305, 		icon = "30px" 	}, 	-- 	-- TORNADOES 	-- 	efu = { 		color = "CCCCCC", 		name = "EFU tornado", 		sortkey = 1001, 		icon = "25px" 	}, 	ef0 = { 		color = "4DFFFF", 		name = "EF0 tornado", 		sortkey = 1000, 		icon = "25px" 	}, 	ef1 = { 		color = "FFFFD9", 		name = "EF1 tornado", 		sortkey = 1010, 		icon = "25px" 	}, 	ef2 = { 		color = "FFD98C", 		name = "EF2 tornado", 		sortkey = 1020, 		icon = "25px" 	}, 	ef3 = { 		color = "FF9E59", 		name = "EF3 tornado", 		sortkey = 1030, 		icon = "25px" 	}, 	ef4 = { 		color = "FF738A", 		name = "EF4 tornado", 		sortkey = 1040, 		icon = "25px" 	}, 	ef5 = { 		color = "A188FC", 		name = "EF5 tornado", 		sortkey = 1050, 		icon = "25px" 	},     ifu = { 		color = "CCCCCC", 		name = "IFU tornado", 		sortkey = 1100, 		icon = "30px" 	}, 	if0m = { 		color = "58EBF8", 		name = "IF0- tornado", 		sortkey = 1101, 		icon = "30px" 	}, 	if0 = { 		color = "4DFFFF", 		name = "IF0 tornado", 		sortkey = 1102, 		icon = "30px" 	}, 	if0p = { 		color = "89FFF3", 		name = "IF0+ tornado", 		sortkey = 1103, 		icon = "30px" 	}, 	if1m = { 		color = "C4FFE6", 		name = "IF1- tornado", 		sortkey = 1104, 		icon = "30px" 	}, 	if1 = { 		color = "FFFFD9", 		name = "IF1 tornado", 		sortkey = 1105, 		icon = "30px" 	}, 	if1p = { 		color = "FFF2BF", 		name = "IF1+ tornado", 		sortkey = 1106, 		icon = "30px" 	}, 	if2m = { 		color = "FFE5A5", 		name = "IF2- tornado", 		sortkey = 1107, 		icon = "30px" 	}, 	if2 = { 		color = "FFD98C", 		name = "IF2 tornado", 		sortkey = 1108, 		icon = "30px" 	}, 	if2p = { 		color = "FFC57B", 		name = "IF2+ tornado", 		sortkey = 1109, 		icon = "30px" 	}, 	if3 = { 		color = "FF9E59", 		name = "IF3 tornado", 		sortkey = 1110, 		icon = "30px" 	}, 	if4 = { 		color = "FF738A", 		name = "IF4 tornado", 		sortkey = 1111, 		icon = "30px" 	}, 	if5 = { 		color = "A188FC", 		name = "IF5 tornado", 		sortkey = 1112, 		icon = "30px" 	},     tu = { 		color = "CCCCCC", 		name = "TU tornado", 		sortkey = 1200, 		icon = "30px" 	}, 	fc = { 		color = "6EC1EA", 		name = "Funnel Cloud", 		sortkey = 1201, 		icon = "30px" 	}, 	t0 = { 		color = "5EE0F5", 		name = "T0 tornado", 		sortkey = 1202, 		icon = "30px" 	}, 	t1 = { 		color = "4DFFFF", 		name = "T1 tornado", 		sortkey = 1203, 		icon = "30px" 	}, 	t2 = { 		color = "A6FFEC", 		name = "T2 tornado", 		sortkey = 1204, 		icon = "30px" 	}, 	t3 = { 		color = "FFFFD9", 		name = "T3 tornado", 		sortkey = 1205, 		icon = "30px" 	}, 	t4 = { 		color = "FFECB3", 		name = "T4 tornado", 		sortkey = 1206, 		icon = "30px" 	}, 	t5 = { 		color = "FFD98C", 		name = "T5 tornado", 		sortkey = 1207, 		icon = "30px" 	}, 	t6 = { 		color = "FFBC73", 		name = "T6 tornado", 		sortkey = 1208, 		icon = "30px" 	}, 	t7 = { 		color = "FF9E59", 		name = "T7 tornado", 		sortkey = 1209, 		icon = "30px" 	}, 	t8 = { 		color = "FF8972", 		name = "T8 tornado", 		sortkey = 1210, 		icon = "30px" 	}, 	t9 = { 		color = "FF738A", 		name = "T9 tornado", 		sortkey = 1211, 		icon = "30px" 	}, 	t10 = { 		color = "D07EC3", 		name = "T10 tornado", 		sortkey = 1212, 		icon = "30px" 	}, 	t11 = { 		color = "A188FC", 		name = "T11 tornado", 		sortkey = 1213, 		icon = "30px" 	}, 	-- Beaufort Scale (windstorms) 	beaufort0 = { 		color = "FFFFFF", 		name = "Calm (Force 0)", 		sortkey = 1500, 		icon = "35px" 	}, 	beaufort1 = { 		color = "757575", 		name = "Light Air (Force 1)", 		sortkey = 1510, 		icon = "35px" 	}, 	beaufort2 = { 		color = "909090", 		name = "Light Breeze (Force 2)", 		sortkey = 1520, 		icon = "35px" 	}, 	beaufort3 = { 		color = "B7B7B7", 		name = "Gentle Breeze (Force 3)", 		sortkey = 1530, 		icon = "35px" 	}, 	beaufort4 = { 		color = "D2D2D2", 		name = "Moderate Breeze (Force 4)", 		sortkey = 1540, 		icon = "35px" 	}, 	beaufort5 = { 		color = "F1F1F1", 		name = "Fresh Breeze (Force 5)", 		sortkey = 1550, 		icon = "35px" 	}, 	beaufort6 = { 		color = "1591DE", 		name = "Strong Breeze (Force 6)", 		sortkey = 1560, 		icon = "35px" 	},     beaufort7 = { 		color = "6EC1EA", 		name = "Near Gale (Force 7)", 		sortkey = 1570, 		icon = "35px" 	},     beaufort8 = { 		color = "5EE0F5", 		name = "Gale (Force 8)", 		sortkey = 1580, 		icon = "35px" 	},     beaufort9 = { 		color = "4DFFFF", 		name = "Strong Gale (Force 9)", 		sortkey = 1590, 		icon = "35px" 	},     beaufort10 = { 		color = "C0FFC0", 		name = "Storm (Force 10)", 		sortkey = 1600, 		icon = "35px" 	},     beaufort11 = { 		color = "E0FFCD", 		name = "Violent Storm (Force 11)", 		sortkey = 1610, 		icon = "35px" 	},     beaufort12 = { 		color = "FFFFD9", 		name = "Hurricane-force (Force 12)", 		sortkey = 1620, 		icon = "35px" 	}, 	-- Drought/Flood 	palmer7 = { 		color = "FF0800", 		name = "Extreme Drought", 		sortkey = 81000, 	}, 	palmer6 = { 		color = "FF5A55", 		name = "Severe Drought", 		sortkey = 81001, 	}, 	palmer5 = { 		color = "FFB3B0", 		name = "Moderate Drought", 		sortkey = 81002, 	}, 	palmer4 = { 		color = "FFFFFF", 		name = "Near Normal", 		sortkey = 81003, 	}, 	palmer3 = { 		color = "A9FEC4", 		name = "Moderately Moist", 		sortkey = 81004, 	}, 	palmer2 = { 		color = "5FFF46", 		name = "Very Moist", 		sortkey = 81005, 	}, 	palmer1 = { 		color = "1BC800", 		name = "Extremely moist", 		sortkey = 81006, 	},     drought0 = { 		color = "FFFFD9", 		name = "Abnormally Dry", 		sortkey = 81100, 	},     drought1 = { 		color = "FFD98C", 		name = "Moderate Drought", 		sortkey = 81101, 	},     drought2 = { 		color = "FF9E59", 		name = "Severe Drought", 		sortkey = 81102, 	},     drought3 = { 		color = "FF738A", 		name = "Extreme Drought", 		sortkey = 81103, 	},     drought4 = { 		color = "A188FC", 		name = "Exceptional Drought", 		sortkey = 81104, 	},     atmosriv1 = { 		color = "FFFFD9", 		name = "Category 1: Weak (Atmospheric river)", 		sortkey = 81200, 		icon = "30px" 	},     atmosriv2 = { 		color = "FFD98C", 		name = "Category 2: Moderate (Atmospheric river)", 		sortkey = 81201, 		icon = "30px" 	},     atmosriv3 = { 		color = "FF9E59", 		name = "Category 3: Strong (Atmospheric river)", 		sortkey = 81202, 		icon = "30px" 	},     atmosriv4 = { 		color = "FF738A", 		name = "Category 4: Extreme (Atmospheric river)", 		sortkey = 81203, 		icon = "30px" 	},     atmosriv5 = { 		color = "A188FC", 		name = "Category 5: Exceptional (Atmospheric river)", 		sortkey = 81204, 		icon = "30px" 	}, 	-- Space Weather     radio1 = { 		color = "FFFFD9", 		name = "Minor Radio Blackout", 		sortkey = 82000, 	},     radio2 = { 		color = "FFD98C", 		name = "Moderate Radio Blackout", 		sortkey = 82001, 	},     radio3 = { 		color = "FF9E59", 		name = "Strong Radio Blackout", 		sortkey = 82002, 	},     radio4 = { 		color = "FF738A", 		name = "Severe Radio Blackout", 		sortkey = 82003, 	},     radio5 = { 		color = "A188FC", 		name = "Extreme Radio Blackout", 		sortkey = 82004, 	},     solar1 = { 		color = "FFFFD9", 		name = "Minor Solar Radiation Storms", 		sortkey = 82100, 	},     solar2 = { 		color = "FFD98C", 		name = "Moderate Solar Radiation Storms", 		sortkey = 82101, 	},     solar3 = { 		color = "FF9E59", 		name = "Strong Solar Radiation Storms", 		sortkey = 82102, 	},     solar4 = { 		color = "FF738A", 		name = "Severe Solar Radiation Storms", 		sortkey = 82103, 	},     solar5 = { 		color = "A188FC", 		name = "Extreme Solar Radiation Storms", 		sortkey = 82104, 	},     geo1 = { 		color = "FFFFD9", 		name = "Minor Geomagnetic Storms", 		sortkey = 82200, 		icon = "35px" 	},     geo2 = { 		color = "FFD98C", 		name = "Moderate Geomagnetic Storms", 		sortkey = 82201, 		icon = "35px" 	},     geo3 = { 		color = "FF9E59", 		name = "Strong Geomagnetic Storms", 		sortkey = 82202, 		icon = "35px" 	},     geo4 = { 		color = "FF738A", 		name = "Severe Geomagnetic Storms", 		sortkey = 82203, 		icon = "35px" 	},     geo5 = { 		color = "A188FC", 		name = "Extreme Geomagnetic Storms", 		sortkey = 82204, 		icon = "35px" 	}, -- Heatwaves and Fireweather/Coldwaves/Temperature     heatw = { 		color = "FFFFD9", 		name = "Warm", 		sortkey = 83000, 	},     heat4 = { 		color = "FFD98C", 		name = "Category 4: Very Warm", 		sortkey = 83001, 	},     heat3 = { 		color = "FF9E59", 		name = "Category 3: Hot", 		sortkey = 83002, 	},     heat2 = { 		color = "FF738A", 		name = "Category 2: Very Hot", 		sortkey = 83003, 	},     heat1 = { 		color = "A188FC", 		name = "Category 1: Extremely Hot", 		sortkey = 83004, 	},     redflagnil = { 		color = "4DFFFF", 		name = "RFTI NIL", 		sortkey = 83100, 		icon = "35px" 	},     redflagelv = { 		color = "FFFFD9", 		name = "RFTI Elevated", 		sortkey = 83101, 		icon = "35px" 	},     redflagcrl = { 		color = "FFD98C", 		name = "RFTI Critical-low", 		sortkey = 83102, 		icon = "35px" 	},     redflagcrh = { 		color = "FF9E59", 		name = "RFTI Critical-High", 		sortkey = 83103, 		icon = "35px" 	},     redflagecr = { 		color = "FF738A", 		name = "RFTI Extremely Critical", 		sortkey = 83104, 		icon = "35px" 	},     redflaghcr = { 		color = "A188FC", 		name = "RFTI Historically critical", 		sortkey = 83004, 		icon = "35px" 	},     tempb70cn = { 		color = "B7698E", 		name = "< -70C temperature", 		sortkey = 2000, 	},     temp70cn = { 		color = "CB83A5", 		name = "≥ -70C temperature", 		sortkey = 2001, 	},     temp65cn = { 		color = "DCAAC2", 		name = "≥ -65C temperature", 		sortkey = 2002, 	},     temp60cn = { 		color = "FAD6EB", 		name = "≥ -60C temperature", 		sortkey = 2003, 	},     temp55cn = { 		color = "868686", 		name = "≥ -55C temperature", 		sortkey = 2004, 	},     temp50cn = { 		color = "BEBEBE", 		name = "≥ -50C temperature", 		sortkey = 2005, 	},     temp45cn = { 		color = "DCDCDC", 		name = "≥ -45C temperature", 		sortkey = 2006, 	},     temp40cn = { 		color = "FFFFFF", 		name = "≥ -40C temperature", 		sortkey = 2007, 	},     temp35cn = { 		color = "FEE9FF", 		name = "≥ -35C temperature", 		sortkey = 2008, 	},     temp30cn = { 		color = "CEA8E7", 		name = "≥ -30C temperature", 		sortkey = 2009, 	},     temp25cn = { 		color = "9F6FD2", 		name = "≥ -25C temperature", 		sortkey = 2010, 	},     temp20cn = { 		color = "716EEE", 		name = "≥ -20C temperature", 		sortkey = 2011, 	},     temp15cn = { 		color = "1e96f8", 		name = "≥ -15C temperature", 		sortkey = 2012, 	},     temp10cn = { 		color = "19c5ff", 		name = "≥ -10C temperature", 		sortkey = 2013, 	},     temp5cn = { 		color = "aedff9", 		name = "≥ -5C temperature", 		sortkey = 2014, 	},     temp0c = { 		color = "009614", 		name = "≥ 0C temperature", 		sortkey = 2015, 	},     temp5c = { 		color = "96df00", 		name = "≥ 5C temperature", 		sortkey = 2016, 	},     temp10c = { 		color = "c5ee03", 		name = "≥ 10C temperature", 		sortkey = 2017, 	},     temp15c = { 		color = "ffff00", 		name = "≥ 15C temperature", 		sortkey = 2018, 	},     temp20c = { 		color = "ffc502", 		name = "≥ 20C temperature", 		sortkey = 2019, 	},     temp25c = { 		color = "ff9606", 		name = "≥ 25C temperature", 		sortkey = 2020, 	},     temp30c = { 		color = "FF5500", 		name = "≥ 30C temperature", 		sortkey = 2021, 	},     temp35c = { 		color = "FE1212", 		name = "≥ 35C temperature", 		sortkey = 2022, 	},     temp40c = { 		color = "FE1284", 		name = "≥ 40C temperature", 		sortkey = 2023, 	},     temp45c = { 		color = "FF7BC3", 		name = "≥ 45C temperature", 		sortkey = 2024, 	},     temp50c = { 		color = "FFC1E3", 		name = "≥ 50C temperature", 		sortkey = 2025, 	},     temp55c = { 		color = "FFD6ED", 		name = "≥ 55C temperature", 		sortkey = 2026, 	},     windchillb100fn = { 		color = "B7698E", 		name = "≤ -100F wind chill", 		sortkey = 2100, 	},     windchill100fn = { 		color = "CB83A5", 		name = "≥ -100F wind chill", 		sortkey = 2101, 	},     windchill90fn = { 		color = "DCAAC2", 		name = "≥ -90F wind chill", 		sortkey = 2102, 	},     windchill80fn = { 		color = "FAD6EB", 		name = "≥ -80F wind chill", 		sortkey = 2103, 	},     windchill70fn = { 		color = "868686", 		name = "≥ -70F wind chill", 		sortkey = 2104, 	},     windchill60fn = { 		color = "BEBEBE", 		name = "≥ -60F wind chill", 		sortkey = 2105, 	},     windchill50fn = { 		color = "DCDCDC", 		name = "≥ -50F wind chill", 		sortkey = 2106, 	},     windchill40fn = { 		color = "FFFFFF", 		name = "≥ -40F wind chill", 		sortkey = 2107, 	},     windchill30fn = { 		color = "FEE9FF", 		name = "≥ -30F wind chill", 		sortkey = 2108, 	},     windchill20fn = { 		color = "CEA8E7", 		name = "≥ -20F wind chill", 		sortkey = 2109, 	},     windchill10fn = { 		color = "9F6FD2", 		name = "≥ -10F wind chill", 		sortkey = 2110, 	},     windchill0f = { 		color = "716EEE", 		name = "≥ 0F wind chill", 		sortkey = 2111, 	},     windchill10f = { 		color = "1e96f8", 		name = "≥ 10F wind chill", 		sortkey = 2112, 	},     windchill20f = { 		color = "19c5ff", 		name = "≥ 20F wind chill", 		sortkey = 2113, 	},     windchill30f = { 		color = "aedff9", 		name = "≥ 30F wind chill", 		sortkey = 2114, 	},     windchill40f = { 		color = "009614", 		name = "≥ 40F wind chill", 		sortkey = 2115, 	},     windchill50f = { 		color = "96df00", 		name = "≥ 50F wind chill", 		sortkey = 2116, 	},     windchill60f = { 		color = "c5ee03", 		name = "≥ 60F wind chill", 		sortkey = 2117, 	},     heatindex30fb = { 		color = "aedff9", 		name = "< 30F heat index", 		sortkey = 2200, 	},     heatindex30f = { 		color = "009614", 		name = "≥ 30F heat index", 		sortkey = 2201, 	},     heatindex40f = { 		color = "96df00", 		name = "≥ 40F heat index", 		sortkey = 2202, 	},     heatindex50f = { 		color = "c5ee03", 		name = "≥ 50F heat index", 		sortkey = 2203, 	},     heatindex60f = { 		color = "ffff00", 		name = "≥ 60F heat index", 		sortkey = 2204, 	},     heatindex70f = { 		color = "ffc502", 		name = "≥ 70F heat index", 		sortkey = 2205, 	},     heatindex80f = { 		color = "ff9606", 		name = "≥ 80F heat index", 		sortkey = 2206, 	},     heatindex90f = { 		color = "FF5500", 		name = "≥ 90F heat index", 		sortkey = 2207, 	},     heatindex100f = { 		color = "FE1212", 		name = "≥ 100F heat index", 		sortkey = 2208, 	},     heatindex110f = { 		color = "FE1284", 		name = "≥ 110F heat index", 		sortkey = 2209, 	},     heatindex120f = { 		color = "FF7BC3", 		name = "≥ 120F heat index", 		sortkey = 2210, 	},     heatindex130f = { 		color = "FFC1E3", 		name = "≥ 130F heat index", 		sortkey = 2211, 	},     heatindex140f = { 		color = "FFD6ED", 		name = "≥ 140F heat index", 		sortkey = 2212, 	},     heatindex150f = { 		color = "FFEDF7", 		name = "≥ 150F heat index", 		sortkey = 2214, 	},     heatindex160f = { 		color = "FFFFFF", 		name = "≥ 160F heat index", 		sortkey = 2215, 	},     frostbite5 = { 		color = "A188FC", 		name = "US: Frostbite 5 mins", 		sortkey = 83010, 	},     frostbite10 = { 		color = "FF738A", 		name = "US: Frostbite 10 mins", 		sortkey = 83011, 	},     frostbite30 = { 		color = "FFD98C", 		name = "US: Frostbite 30 mins", 		sortkey = 83012, 	},     frostbiten = { 		color = "FFFFD9", 		name = "US: Frostbite more than 30 mins/not possible", 		sortkey = 83013, 	},     windchilllow = { 		color = "4DFFFF", 		name = "Canada: low windchill risk", 		sortkey = 83020, 	},     windchillmoderate = { 		color = "FFFFD9", 		name = "Canada: moderate windchill risk", 		sortkey = 83021, 	},     windchillhigh = { 		color = "FFD98C", 		name = "Canada: high windchill risk", 		sortkey = 83022, 	},     windchillveryhigh = { 		color = "FF9E59", 		name = "Canada: very high windchill risk", 		sortkey = 83023, 	},     windchillsevere = { 		color = "FF738A", 		name = "Canada: severe windchill risk", 		sortkey = 83024, 	},     windchillextreme = { 		color = "A188FC", 		name = "Canada: extreme windchill risk", 		sortkey = 83025, 	}, -- ENSO     enson = { 		color = "ACACAC", 		name = "ENSO Neutral", 		sortkey = 200, 	},     ensowen = { 		color = "C18881", 		name = "ENSO Weak El Nino", 		sortkey = 201, 	},     ensomen = { 		color = "D46356", 		name = "ENSO Moderate El Nino", 		sortkey = 202, 	},     ensosen = { 		color = "E73E2B", 		name = "ENSO Strong El Nino", 		sortkey = 203, 	},     ensovsen = { 		color = "FA1900", 		name = "ENSO Very Strong El Nino", 		sortkey = 204, 	},     ensosln = { 		color = "0082E6", 		name = "ENSO Strong La Nina", 		sortkey = 205, 	},     ensomln = { 		color = "3A90D2", 		name = "ENSO Moderate La Nina", 		sortkey = 206, 	},     ensowln = { 		color = "739EBF", 		name = "ENSO Weak La Nina", 		sortkey = 207, 	}, -- WPC/SPC Risk categories     tstm = { 		color = "A9FEC4", 		name = "T-storm", 		sortkey = 84000, 	icon = "30px" 	},     mrglr = { 		color = "1BC800", 		name = "Marginal Risk", 		sortkey = 84001, 	icon = "30px" 	},     slgtr = { 		color = "FFD98C", 		name = "Slight Risk", 		sortkey = 84002, 	icon = "30px" 	},     enhr = { 		color = "FF9E59", 		name = "Enhanced Risk", 		sortkey = 84003, 	icon = "30px" 	},     mdtr = { 		color = "FF738A", 		name = "Moderate Risk", 		sortkey = 84004, 	icon = "30px" 	},     highr = { 		color = "A188FC", 		name = "High Risk", 		sortkey = 84005, 	icon = "30px" 	},     elevatedr = { 		color = "FF9E59", 		name = "Elevated Risk", 		sortkey = 84100, 		icon = "35px" 	},     criticalr = { 		color = "FF738A", 		name = "Critical Risk", 		sortkey = 84101, 		icon = "35px" 	},     extremer = { 		color = "A188FC", 		name = "Extreme risk", 		sortkey = 84102, 		icon = "35px" 	} }  -- Define aliases  -- All non-alphanumeric characters are already stripped, and the string is -- already set to lowercase, so additional aliases for those are no longer -- required.  cats["rsinuisance"] = cats["rsi0"] cats["rsinotable"] = cats["rsi1"] cats["rsiminor"] = cats["rsi2"] cats["rsimajor"] = cats["rsi3"] cats["rsicrippling"] = cats["rsi4"] cats["rsiextreme"] = cats["rsi5"] cats["rsinuisance"] = cats["rsi0"] cats["wssi0"] = cats["wssinone"] cats["wssi1"] = cats["wssilimited"] cats["wssi2"] = cats["wssiminor"] cats["wssi3"] = cats["wssimoderate"] cats["wssi4"] = cats["wssimajor"] cats["wssi5"] = cats["wssiextreme"] cats["sty"] = cats["supertyphoon"] cats["nwpsevere"] = cats["severe"] cats["strong"] = cats["severe"] cats["swiosts"] = cats["severe"] cats["sts"] = cats["severe"] cats["severets"] = cats["severe"] cats["ty"] = cats["typhoon"] cats["vstrtyphoon"] = cats["vstyphoon"] cats["vsty"] = cats["vstyphoon"] cats["vity"] = cats["vityphoon"] cats["td"] = cats["depression"] cats["ts"] = cats["storm"] cats["nwpstorm"] = cats["storm"] cats["d"] = cats["depression"] cats["overlanddepression"] = cats["overland"] cats["od"] = cats["overland"] cats["spdepression"] = cats["depression"] cats["shdepression"] = cats["depression"] cats["shemdepression"] = cats["depression"] cats["swiodepression"] = cats["depression"] cats["spdepression"] = cats["depression"] cats["nwpdepression"] = cats["depression"] cats["swsubdep"] = cats["subdepression"] cats["sd"] = cats["subdepression"] cats["ss"] = cats["subtropical"] cats["et"] = cats["extratropical"] cats["ex"] = cats["extratropical"] cats["md"] = cats["monsoondepression"] cats["pt"] = cats["potential"] cats["potentialtropicalcyclone"] = cats["potential"] cats["potentialtropicalcyclone"] = cats["potential"] cats["post"] = cats["posttropical"] cats["remnantlow"] = cats["remnant"] cats["rl"] = cats["remnant"] cats["sucs"] = cats["sprcyclstorm"] cats["escs"] = cats["esvrcyclstorm"] cats["vscs"] = cats["vsvrcyclstorm"] cats["scs"] = cats["svrcyclstorm"] cats["cs"] = cats["niocyclone"] cats["dd"] = cats["deepdepression"] cats["cyclstorm"] = cats["niocyclone"] cats["landdepression"] = cats["nioland"] cats["land"] = cats["nioland"] cats["ld"] = cats["nioland"] cats["fiji5"] = cats["aus5"] cats["fiji4"] = cats["aus4"] cats["fiji3"] = cats["aus3"] cats["fiji2"] = cats["aus2"] cats["fiji1"] = cats["aus1"] cats["tl"] = cats["low"] cats["di"] = cats["disturbance"] cats["swiodisturbance"] = cats["disturbance"] cats["tdist"] = cats["disturbance"] cats["mts"] = cats["mstorm"] cats["sub"] = cats["mstorm"] cats["vitc"] = cats["vintense"] cats["itc"] = cats["intense"] cats["tc"] = cats["tropicalcyclone"] cats["swiotc"] = cats["tropicalcyclone"] cats["shem3"] = cats["tropicalcyclone"] cats["shemtc"] = cats["tropicalcyclone"] cats["f12"] = cats["beaufort12"] cats["f11"] = cats["beaufort11"] cats["f10"] = cats["beaufort10"] cats["f9"] = cats["beaufort9"] cats["f8"] = cats["beaufort8"] cats["f7"] = cats["beaufort7"] cats["f6"] = cats["beaufort6"] cats["f5"] = cats["beaufort5"] cats["f4"] = cats["beaufort4"] cats["f3"] = cats["beaufort3"] cats["f2"] = cats["beaufort2"] cats["f1"] = cats["beaufort1"] cats["f0"] = cats["beaufort0"] cats["d0"] = cats["drought0"] cats["d1"] = cats["drought1"] cats["d2"] = cats["drought2"] cats["d3"] = cats["drought3"] cats["d4"] = cats["drought4"] cats["p1"] = cats["palmer1"] cats["p2"] = cats["palmer2"] cats["p3"] = cats["palmer3"] cats["p4"] = cats["palmer4"] cats["p5"] = cats["palmer5"] cats["p6"] = cats["palmer6"] cats["p7"] = cats["palmer7"] cats["r1"] = cats["radio1"] cats["r2"] = cats["radio2"] cats["r3"] = cats["radio3"] cats["r4"] = cats["radio4"] cats["r5"] = cats["radio5"] cats["s1"] = cats["solar1"] cats["s2"] = cats["solar2"] cats["s3"] = cats["solar3"] cats["s4"] = cats["solar4"] cats["s5"] = cats["solar5"] cats["g1"] = cats["geo1"] cats["g2"] = cats["geo2"] cats["g3"] = cats["geo3"] cats["g4"] = cats["geo4"] cats["g5"] = cats["geo5"] cats["h1"] = cats["heat1"] cats["h2"] = cats["heat2"] cats["h3"] = cats["heat3"] cats["h4"] = cats["heat4"] cats["hw"] = cats["heatw"] cats["thunderstorm"] = cats["tstm"] cats["tstorm"] = cats["tstm"] cats["slightrisk"] = cats["slgtr"] cats["marginalrisk"] = cats["mrglr"] cats["moderaterisk"] = cats["mdtr"] cats["highrisk"] = cats["highr"] cats["enhancedrisk"] = cats["enhr"] cats["elevatedrisk"] = cats["elevatedr"] cats["extremerisk"] = cats["extremer"] cats["criticalrisk"] = cats["criticalr"] cats["redflag0"] = cats["redflagnil"] cats["redflag1"] = cats["redflagelv"] cats["redflag3"] = cats["redflagcrl"] cats["redflag5"] = cats["redflagcrh"] cats["redflag7"] = cats["redflagecr"] cats["redflag9"] = cats["redflaghcr"] cats["rfti0"] = cats["redflagnil"] cats["rfti1"] = cats["redflagelv"] cats["rfti3"] = cats["redflagcrl"] cats["rfti5"] = cats["redflagcrh"] cats["rfti7"] = cats["redflagecr"] cats["rfti9"] = cats["redflaghcr"] cats["torrou"] = cats["tu"] cats["torro0"] = cats["t0"] cats["torro1"] = cats["t1"] cats["torro2"] = cats["t2"] cats["torro3"] = cats["t3"] cats["torro4"] = cats["t4"] cats["torro5"] = cats["t5"] cats["torro6"] = cats["t6"] cats["torro7"] = cats["t7"] cats["torro8"] = cats["t8"] cats["torro9"] = cats["t9"] cats["torro10"] = cats["t10"] cats["torro11"] = cats["t11"] cats["funnelcloud"] = cats["fc"] cats["ice0"] = cats["spia0"] cats["ice1"] = cats["spia1"] cats["ice2"] = cats["spia2"] cats["ice3"] = cats["spia3"] cats["ice4"] = cats["spia4"] cats["ice5"] = cats["spia5"]  -- Key standardization check for k, v in pairs(cats) do 	if k ~= mw.ustring.gsub(k, "[^%w]", "") then 		mw.addWarning( 			"Category \"" 			.. k 			.. "\" in Module:Storm categories/categories is defined with a non-alphanumeric key. " 			.. "This key will likely be unusable unless non-alphanumeric characters are removed." 		) 	end end  p.defaultCategory = "unknown" p.cats = cats return p