diff Libs/DF/textentry.lua @ 58:0682d738499b v8.0.1.058

- 8.0.1 Update.
author Tercio
date Fri, 20 Jul 2018 19:04:12 -0300
parents 7c0f819a85c6
children
line wrap: on
line diff
--- a/Libs/DF/textentry.lua	Sun Mar 11 10:50:42 2018 -0300
+++ b/Libs/DF/textentry.lua	Fri Jul 20 19:04:12 2018 -0300
@@ -14,6 +14,7 @@
 local loadstring = loadstring --> lua local
 local _string_len = string.len --> lua local
 
+
 local cleanfunction = function() end
 local APITextEntryFunctions = false
 
@@ -712,69 +713,7 @@
 	return self.editbox:SetFocus (true)
 end
 
-function DF:NewSpecialLuaEditorEntry (parent, w, h, member, name, nointent)
-	
-	if (name:find ("$parent")) then
-		local parentName = DF.GetParentName (parent)
-		name = name:gsub ("$parent", parentName)
-	end
-	
-	local borderframe = CreateFrame ("Frame", name, parent)
-	borderframe:SetSize (w, h)
-	
-	if (member) then
-		parent [member] = borderframe
-	end
-	
-	local scrollframe = CreateFrame ("ScrollFrame", name, borderframe, "DetailsFrameworkEditBoxMultiLineTemplate")
-	
-	scrollframe:SetScript ("OnSizeChanged", function (self)
-		scrollframe.editbox:SetSize (self:GetSize())
-	end)
-	
-	scrollframe:SetPoint ("topleft", borderframe, "topleft", 10, -10)
-	scrollframe:SetPoint ("bottomright", borderframe, "bottomright", -30, 10)
-	
-	scrollframe.editbox:SetMultiLine (true)
-	scrollframe.editbox:SetJustifyH ("left")
-	scrollframe.editbox:SetJustifyV ("top")
-	scrollframe.editbox:SetMaxBytes (1024000)
-	scrollframe.editbox:SetMaxLetters (128000)
-	
-	borderframe.GetText = function_gettext
-	borderframe.SetText = function_settext
-	borderframe.ClearFocus = function_clearfocus
-	borderframe.SetFocus = function_setfocus
-	
-	borderframe.Enable = TextEntryMetaFunctions.Enable
-	borderframe.Disable = TextEntryMetaFunctions.Disable
-	
-	borderframe.SetTemplate = TextEntryMetaFunctions.SetTemplate
-	
-	if (not nointent) then
-		IndentationLib.enable (scrollframe.editbox, nil, 4)
-	end
-	
-	borderframe:SetBackdrop ({bgFile = [[Interface\Tooltips\UI-Tooltip-Background]], edgeFile = [[Interface\Tooltips\UI-Tooltip-Border]], 
-		tile = 1, tileSize = 16, edgeSize = 16, insets = {left = 5, right = 5, top = 5, bottom = 5}})
-	
-	scrollframe.editbox.current_bordercolor = {1, 1, 1, 0.7}
-	borderframe:SetBackdropBorderColor (1, 1, 1, 0.7)
-	borderframe:SetBackdropColor (0.090195, 0.090195, 0.188234, 1)
-	
-	borderframe.enabled_border_color = {borderframe:GetBackdropBorderColor()}
-	borderframe.enabled_backdrop_color = {borderframe:GetBackdropColor()}
-	borderframe.enabled_text_color = {scrollframe.editbox:GetTextColor()}
 
-	borderframe.onleave_backdrop = {scrollframe.editbox:GetBackdropColor()}
-	borderframe.onleave_backdrop_border_color = {scrollframe.editbox:GetBackdropBorderColor()}
-	
-	borderframe.scroll = scrollframe
-	borderframe.editbox = scrollframe.editbox
-	borderframe.editbox.borderframe = borderframe
-	
-	return borderframe
-end
 
 
 ------------------------------------------------------------------------------------
@@ -893,6 +832,7 @@
 		local character = text:sub (i, i)
 		if (character:match ("%a")) then
 			self.lastword = character .. self.lastword
+			--print (self.lastword)
 		else
 			break
 		end
@@ -901,7 +841,7 @@
 
 --On Text Changed
 local AutoComplete_OnTextChanged = function (editboxWidget, byUser, capsule)
-	capsule = capsule or editboxWidget.MyObject
+	capsule = capsule or editboxWidget.MyObject or editboxWidget
 	
 	local chars_now = editboxWidget:GetText():len()
 	if (not editboxWidget.ignore_textchange) then
@@ -921,7 +861,7 @@
 end
 
 local AutoComplete_OnSpacePressed = function (editboxWidget, capsule)
-	capsule = capsule or editboxWidget.MyObject
+	capsule = capsule or editboxWidget.MyObject or editboxWidget
 
 --	if (not gotMatch) then
 		--editboxWidget.end_selection = nil
@@ -934,12 +874,12 @@
 
 local AutoComplete_OnEnterPressed = function (editboxWidget)
 
-	local capsule = editboxWidget.MyObject
+	local capsule = editboxWidget.MyObject or editboxWidget
 	if (editboxWidget.end_selection) then
 		editboxWidget:SetCursorPosition (editboxWidget.end_selection)
 		editboxWidget:HighlightText (0, 0)
 		editboxWidget.end_selection = nil
-		--editboxWidget:Insert (" ") --estava causando a adição de uma palavra a mais quando o próximo catactere for um espaço
+		--editboxWidget:Insert (" ") --estava causando a adi��o de uma palavra a mais quando o pr�ximo catactere for um espa�o
 	else
 		if (editboxWidget:IsMultiLine()) then
 			editboxWidget:Insert ("\n")
@@ -959,26 +899,58 @@
 end
 
 local AutoComplete_OnEditFocusGained = function (editboxWidget)
-	local capsule = editboxWidget.MyObject
+	local capsule = editboxWidget.MyObject or editboxWidget
 	capsule:GetLastWord()
+	--print ("last word:", editboxWidget.lastword)
 	editboxWidget.end_selection = nil
 	editboxWidget.focusGained = true
 	capsule.characters_count = editboxWidget:GetText():len()	
 end
 
+local OptimizeAutoCompleteTable = function (self, wordList)
+	local optimizedTable = {}
+	
+	local lower = string.lower
+	local sub = string.sub
+	local len = string.len
+	
+	local subTables = 0
+	
+	for i = 1, #wordList do
+		local thisWord = wordList [i]
+		if (len (thisWord) > 0) then
+			thisWord = lower (thisWord)
+		
+			local firstCharacter = sub (thisWord, 1, 1)
+			
+			local charTable = optimizedTable [firstCharacter]
+			if (not charTable) then
+				charTable = {}
+				optimizedTable [firstCharacter] = charTable
+				
+				subTables = subTables + 1
+			end
+			
+			charTable [#charTable+1] = thisWord
+		end
+	end
+	
+	wordList.Optimized = optimizedTable
+end
+
 local AutoComplete_OnChar = function (editboxWidget, char, capsule)
 	if (char == "") then
 		return
 	end
 	
-	capsule = capsule or editboxWidget.MyObject
+	capsule = capsule or editboxWidget.MyObject or editboxWidget
  	editboxWidget.end_selection = nil
 	
 	if (editboxWidget.ignore_input) then
 		return
 	end
 	
-	--reseta a palavra se acabou de ganhar focus e apertou espaço
+	--reseta a palavra se acabou de ganhar focus e apertou espa�o
 	if (editboxWidget.focusGained and char == " ") then
 		capsule.lastword = ""
 		editboxWidget.focusGained = nil
@@ -993,13 +965,41 @@
 	end
 	
 	editboxWidget.ignore_input = true
+	
 	if (capsule.lastword:len() >= 2) then
 	
 		local wordList = capsule [capsule.poolName]
 		if (not wordList) then
-			if (DF.debug) then
-				error ("Details! Framework: Invalid word list table.")
+			error ("Details! Framework: TextEntry has AutoComplete but no word list table.")
+			return
+		end
+		
+		if (capsule.ShouldOptimizeAutoComplete) then
+			if (not wordList.Optimized) then
+				OptimizeAutoCompleteTable (capsule, wordList)
 			end
+			
+			local firstCharacter = string.lower (string.sub (capsule.lastword, 1, 1))
+			wordList = wordList.Optimized [firstCharacter]
+			
+			if (wordList) then
+				for i = 1, #wordList do
+					local thisWord = wordList [i]
+					if (thisWord and (thisWord:find ("^" .. capsule.lastword) or thisWord:lower():find ("^" .. capsule.lastword))) then
+						local rest = thisWord:gsub (capsule.lastword, "")
+						rest = rest:lower():gsub (capsule.lastword, "")
+						local cursor_pos = editboxWidget:GetCursorPosition()
+						editboxWidget:Insert (rest)
+						editboxWidget:HighlightText (cursor_pos, cursor_pos + rest:len())
+						editboxWidget:SetCursorPosition (cursor_pos)
+						editboxWidget.end_selection = cursor_pos + rest:len()
+						editboxWidget.ignore_textchange = true
+						break
+					end
+				end
+			end
+			
+			editboxWidget.ignore_input = false
 			return
 		end
 	
@@ -1017,32 +1017,1420 @@
 				break
 			end
 		end
+	end
 	
-	end
 	editboxWidget.ignore_input = false
 end
 
-function TextEntryMetaFunctions:SetAsAutoComplete (poolName)
+function TextEntryMetaFunctions:SetAsAutoComplete (poolName, poolTable, shouldOptimize)
 	
-	self.lastword = ""
-	self.characters_count = 0
-	self.poolName = poolName
-	self.GetLastWord = get_last_word --editbox:GetLastWord()
-	self.NoClearFocusOnEnterPressed = true --avoid auto clear focus
-	
-	self:SetHook ("OnEditFocusGained", AutoComplete_OnEditFocusGained)
-	self.editbox:HookScript ("OnEscapePressed", AutoComplete_OnEscapePressed)
-	
---	self:SetHook ("OnTextChanged", AutoComplete_OnTextChanged)
-	self:SetHook ("OnEnterPressed", AutoComplete_OnEnterPressed)
---	self:SetHook ("OnChar", AutoComplete_OnChar)
---	self:SetHook ("OnSpacePressed", AutoComplete_OnSpacePressed)
-	
-	self.editbox:SetScript ("OnTextChanged", AutoComplete_OnTextChanged)
---	self.editbox:SetScript ("OnEnterPressed", AutoComplete_OnEnterPressed)
-	self.editbox:SetScript ("OnChar", AutoComplete_OnChar)
-	self.editbox:SetScript ("OnSpacePressed", AutoComplete_OnSpacePressed)
+	if (not self.SetHook) then
+		--self is borderframe
+		self = self.editbox
+		self.editbox = self --compatible with fw functions
+		
+		self.lastword = ""
+		self.characters_count = 0
+		self.poolName = poolName
+		self.GetLastWord = get_last_word --editbox:GetLastWord()
+		self.NoClearFocusOnEnterPressed = true --avoid auto clear focus
+		self.ShouldOptimizeAutoComplete = shouldOptimize
+		
+		if (poolTable) then
+			self [poolName] = poolTable
+		end
+		
+		self:HookScript ("OnEditFocusGained", AutoComplete_OnEditFocusGained)
+		self:HookScript ("OnEnterPressed", AutoComplete_OnEnterPressed)
+		self:HookScript ("OnEscapePressed", AutoComplete_OnEscapePressed)
+		self:HookScript ("OnTextChanged", AutoComplete_OnTextChanged)
+		self:HookScript ("OnChar", AutoComplete_OnChar)
+		self:HookScript ("OnSpacePressed", AutoComplete_OnSpacePressed)
+	else
+		--fw textfield
+		self.lastword = ""
+		self.characters_count = 0
+		self.poolName = poolName
+		self.GetLastWord = get_last_word --editbox:GetLastWord()
+		self.NoClearFocusOnEnterPressed = true --avoid auto clear focus
+		self.ShouldOptimizeAutoComplete = shouldOptimize
+		
+		self:SetHook ("OnEditFocusGained", AutoComplete_OnEditFocusGained)
+		self:SetHook ("OnEnterPressed", AutoComplete_OnEnterPressed)
+		self.editbox:HookScript ("OnEscapePressed", AutoComplete_OnEscapePressed)
+		self.editbox:SetScript ("OnTextChanged", AutoComplete_OnTextChanged)
+		self.editbox:SetScript ("OnChar", AutoComplete_OnChar)
+		self.editbox:SetScript ("OnSpacePressed", AutoComplete_OnSpacePressed)
+	end
 
 end
 
--- endp
\ No newline at end of file
+function DF:NewSpecialLuaEditorEntry (parent, w, h, member, name, nointent)
+	
+	if (name:find ("$parent")) then
+		local parentName = DF.GetParentName (parent)
+		name = name:gsub ("$parent", parentName)
+	end
+	
+	local borderframe = CreateFrame ("Frame", name, parent)
+	borderframe:SetSize (w, h)
+	
+	if (member) then
+		parent [member] = borderframe
+	end
+	
+	local scrollframe = CreateFrame ("ScrollFrame", name, borderframe, "DetailsFrameworkEditBoxMultiLineTemplate")
+
+	borderframe.SetAsAutoComplete = TextEntryMetaFunctions.SetAsAutoComplete
+	
+	scrollframe:SetScript ("OnSizeChanged", function (self)
+		scrollframe.editbox:SetSize (self:GetSize())
+	end)
+	
+	scrollframe:SetPoint ("topleft", borderframe, "topleft", 10, -10)
+	scrollframe:SetPoint ("bottomright", borderframe, "bottomright", -30, 10)
+	
+	scrollframe.editbox:SetMultiLine (true)
+	scrollframe.editbox:SetJustifyH ("left")
+	scrollframe.editbox:SetJustifyV ("top")
+	scrollframe.editbox:SetMaxBytes (1024000)
+	scrollframe.editbox:SetMaxLetters (128000)
+	
+	borderframe.GetText = function_gettext
+	borderframe.SetText = function_settext
+	borderframe.ClearFocus = function_clearfocus
+	borderframe.SetFocus = function_setfocus
+	
+	borderframe.Enable = TextEntryMetaFunctions.Enable
+	borderframe.Disable = TextEntryMetaFunctions.Disable
+	
+	borderframe.SetTemplate = TextEntryMetaFunctions.SetTemplate
+	
+	if (not nointent) then
+		IndentationLib.enable (scrollframe.editbox, nil, 4)
+	end
+	
+	borderframe:SetBackdrop ({bgFile = [[Interface\Tooltips\UI-Tooltip-Background]], edgeFile = [[Interface\Tooltips\UI-Tooltip-Border]], 
+		tile = 1, tileSize = 16, edgeSize = 16, insets = {left = 5, right = 5, top = 5, bottom = 5}})
+	
+	scrollframe.editbox.current_bordercolor = {1, 1, 1, 0.7}
+	borderframe:SetBackdropBorderColor (1, 1, 1, 0.7)
+	borderframe:SetBackdropColor (0.090195, 0.090195, 0.188234, 1)
+	
+	borderframe.enabled_border_color = {borderframe:GetBackdropBorderColor()}
+	borderframe.enabled_backdrop_color = {borderframe:GetBackdropColor()}
+	borderframe.enabled_text_color = {scrollframe.editbox:GetTextColor()}
+
+	borderframe.onleave_backdrop = {scrollframe.editbox:GetBackdropColor()}
+	borderframe.onleave_backdrop_border_color = {scrollframe.editbox:GetBackdropBorderColor()}
+	
+	borderframe.scroll = scrollframe
+	borderframe.editbox = scrollframe.editbox
+	borderframe.editbox.borderframe = borderframe
+	
+	return borderframe
+end
+
+-- encryption table
+local base64chars = {[0]='A',[1]='B',[2]='C',[3]='D',[4]='E',[5]='F',[6]='G',[7]='H',[8]='I',[9]='J',[10]='K',[11]='L',[12]='M',[13]='N',[14]='O',[15]='P',[16]='Q',[17]='R',[18]='S',[19]='T',[20]='U',[21]='V',[22]='W',[23]='X',[24]='Y',[25]='Z',[26]='a',[27]='b',[28]='c',[29]='d',[30]='e',[31]='f',[32]='g',[33]='h',[34]='i',[35]='j',[36]='k',[37]='l',[38]='m',[39]='n',[40]='o',[41]='p',[42]='q',[43]='r',[44]='s',[45]='t',[46]='u',[47]='v',[48]='w',[49]='x',[50]='y',[51]='z',[52]='0',[53]='1',[54]='2',[55]='3',[56]='4',[57]='5',[58]='6',[59]='7',[60]='8',[61]='9',[62]='-',[63]='_'}
+
+-- decryption table
+local base64bytes = {['A']=0,['B']=1,['C']=2,['D']=3,['E']=4,['F']=5,['G']=6,['H']=7,['I']=8,['J']=9,['K']=10,['L']=11,['M']=12,['N']=13,['O']=14,['P']=15,['Q']=16,['R']=17,['S']=18,['T']=19,['U']=20,['V']=21,['W']=22,['X']=23,['Y']=24,['Z']=25,['a']=26,['b']=27,['c']=28,['d']=29,['e']=30,['f']=31,['g']=32,['h']=33,['i']=34,['j']=35,['k']=36,['l']=37,['m']=38,['n']=39,['o']=40,['p']=41,['q']=42,['r']=43,['s']=44,['t']=45,['u']=46,['v']=47,['w']=48,['x']=49,['y']=50,['z']=51,['0']=52,['1']=53,['2']=54,['3']=55,['4']=56,['5']=57,['6']=58,['7']=59,['8']=60,['9']=61,['-']=62,['_']=63,['=']=nil}
+
+-- shift left
+local function lsh (value,shift)
+	return (value*(2^shift)) % 256
+end
+
+-- shift right
+local function rsh (value,shift)
+	return math.floor(value/2^shift) % 256
+end
+
+-- return single bit (for OR)
+local function bit (x,b)
+	return (x % 2^b - x % 2^(b-1) > 0)
+end
+
+local function lor (x,y)
+	result = 0
+	for p=1,8 do result = result + (((bit(x,p) or bit(y,p)) == true) and 2^(p-1) or 0) end
+	return result
+end
+
+function DF.EncodeString (data)
+	local bytes = {}
+	local result = ""
+	for spos=0,string.len(data)-1,3 do
+		for byte=1,3 do bytes[byte] = string.byte(string.sub(data,(spos+byte))) or 0 end
+		result = string.format('%s%s%s%s%s',result,base64chars[rsh(bytes[1],2)],base64chars[lor(lsh((bytes[1] % 4),4), rsh(bytes[2],4))] or "=",((#data-spos) > 1) and base64chars[lor(lsh(bytes[2] % 16,2), rsh(bytes[3],6))] or "=",((#data-spos) > 2) and base64chars[(bytes[3] % 64)] or "=")
+	end
+	return result
+end
+
+function DF.DecodeString (data)
+	local chars = {}
+	local result=""
+	for dpos=0,string.len(data)-1,4 do
+		for char=1,4 do chars[char] = base64bytes[(string.sub(data,(dpos+char),(dpos+char)) or "=")] end
+		result = string.format('%s%s%s%s',result,string.char(lor(lsh(chars[1],2), rsh(chars[2],4))),(chars[3] ~= nil) and string.char(lor(lsh(chars[2],4), rsh(chars[3],2))) or "",(chars[4] ~= nil) and string.char(lor(lsh(chars[3],6) % 192, (chars[4]))) or "")
+	end
+	return result
+end
+
+
+DF.AutoCompleteAPI = {
+	"local",
+	"AddTrackedAchievement", -- [1]
+	"CanShowAchievementUI", -- [2]
+	"ClearAchievementComparisonUnit", -- [3]
+	"GetAchievementCategory", -- [4]
+	"GetAchievementComparisonInfo", -- [5]
+	"GetAchievementCriteriaInfo", -- [6]
+	"GetAchievementInfo", -- [7]
+	"GetAchievementInfoFromCriteria", -- [8]
+	"GetAchievementLink", -- [9]
+	"GetAchievementNumCriteria", -- [10]
+	"GetAchievementNumRewards", -- [11]
+	"GetCategoryInfo", -- [12]
+	"GetCategoryList", -- [13]
+	"GetCategoryNumAchievements", -- [14]
+	"GetComparisonAchievementPoints", -- [15]
+	"GetComparisonCategoryNumAchievements", -- [16]
+	"GetComparisonStatistic", -- [17]
+	"GetLatestCompletedAchievements", -- [18]
+	"GetLatestCompletedComparisonAchievements", -- [19]
+	"GetLatestUpdatedComparisonStatsGetLatestUpdatedStats", -- [20]
+	"GetNextAchievement", -- [21]
+	"GetNumComparisonCompletedAchievements", -- [22]
+	"GetNumCompletedAchievements", -- [23]
+	"GetPreviousAchievement", -- [24]
+	"GetStatistic", -- [25]
+	"GetStatisticsCategoryList", -- [26]
+	"GetTotalAchievementPoints", -- [27]
+	"GetTrackedAchievements", -- [28]
+	"GetNumTrackedAchievements", -- [29]
+	"RemoveTrackedAchievement", -- [30]
+	"SetAchievementComparisonUnit", -- [31]
+	"ActionButtonDown", -- [32]
+	"ActionButtonUp", -- [33]
+	"ActionHasRange", -- [34]
+	"CameraOrSelectOrMoveStart", -- [35]
+	"CameraOrSelectOrMoveStop", -- [36]
+	"ChangeActionBarPage", -- [37]
+	"GetActionBarPage", -- [38]
+	"GetActionBarToggles", -- [39]
+	"GetActionCooldown", -- [40]
+	"GetActionCount", -- [41]
+	"GetActionInfo", -- [42]
+	"GetActionText", -- [43]
+	"GetActionTexture", -- [44]
+	"GetBonusBarOffset", -- [45]
+	"GetMouseButtonClicked", -- [46]
+	"GetMultiCastBarOffset", -- [47]
+	"GetPossessInfo", -- [48]
+	"HasAction", -- [49]
+	"IsActionInRange", -- [50]
+	"IsAttackAction", -- [51]
+	"IsAutoRepeatAction", -- [52]
+	"IsCurrentAction", -- [53]
+	"IsConsumableAction", -- [54]
+	"IsEquippedAction", -- [55]
+	"IsUsableAction", -- [56]
+	"PetHasActionBar", -- [57]
+	"PickupAction", -- [58]
+	"PickupPetAction", -- [59]
+	"PlaceAction", -- [60]
+	"SetActionBarToggles", -- [61]
+	"StopAttack", -- [62]
+	"TurnOrActionStart", -- [63]
+	"TurnOrActionStop", -- [64]
+	"UseAction", -- [65]
+	"AcceptDuel", -- [66]
+	"AttackTarget", -- [67]
+	"CancelDuel", -- [68]
+	"CancelLogout", -- [69]
+	"ClearTutorials", -- [70]
+	"CancelSummon", -- [71]
+	"ConfirmSummon", -- [72]
+	"DescendStop", -- [73]
+	"Dismount", -- [74]
+	"FlagTutorial", -- [75]
+	"ForceQuit", -- [76]
+	"GetPVPTimer", -- [77]
+	"GetSummonConfirmAreaName", -- [78]
+	"GetSummonConfirmSummoner", -- [79]
+	"GetSummonConfirmTimeLeft", -- [80]
+	"RandomRoll", -- [81]
+	"SetPVP", -- [82]
+	"StartDuel", -- [84]
+	"TogglePVP", -- [85]
+	"ToggleSheath", -- [86]
+	"UseSoulstone", -- [87]
+	"CanSolveArtifact", -- [89]
+	"UIParent", -- [90]
+	"GetArtifactInfoByRace", -- [91]
+	"GetArtifactProgress", -- [92]
+	"GetNumArtifactsByRace", -- [93]
+	"GetSelectedArtifactInfo", -- [94]
+	"IsArtifactCompletionHistoryAvailable", -- [95]
+	"ItemAddedToArtifact", -- [96]
+	"RemoveItemFromArtifact", -- [97]
+	"RequestArtifactCompletionHistory", -- [98]
+	"SocketItemToArtifact", -- [99]
+	"AcceptArenaTeam", -- [101]
+	"ArenaTeamInviteByName", -- [102]
+	"ArenaTeamSetLeaderByName", -- [103]
+	"ArenaTeamLeave", -- [104]
+	"ArenaTeamRoster", -- [105]
+	"ArenaTeamUninviteByName", -- [106]
+	"ArenaTeamDisband", -- [107]
+	"DeclineArenaTeam", -- [108]
+	"GetArenaTeam", -- [109]
+	"GetArenaTeamGdfInf", -- [110]
+	"oGetArenaTeamRosterInfo", -- [111]
+	"GetBattlefieldTeamInfo", -- [112]
+	"GetCurrentArenaSeason", -- [113]
+	"GetInspectArenaTeamData", -- [114]
+	"GetNumArenaTeamMembers", -- [115]
+	"GetPreviousArenaSeason", -- [116]
+	"IsActiveBattlefieldArena", -- [117]
+	"IsArenaTeamCaptain", -- [118]
+	"IsInArenaTeam", -- [119]
+	"CalculateAuctionDeposit", -- [121]
+	"CanCancelAuction", -- [122]
+	"CancelSell", -- [123]
+	"CanSendAuctionQuery", -- [124]
+	"CancelAuction", -- [125]
+	"ClickAuctionSellItemButton", -- [126]
+	"CloseAuctionHouse", -- [127]
+	"GetAuctionHouseDepositRate", -- [128]
+	"GetAuctionInvTypes", -- [129]
+	"GetAuctionItemClasses", -- [130]
+	"GetAuctionItemInfo", -- [131]
+	"GetAuctionItemLink", -- [132]
+	"GetAuctionItemSubClasses", -- [133]
+	"GetAuctionItemTimeLeft", -- [134]
+	"GetAuctionSellItemInfo", -- [135]
+	"GetBidderAuctionItems", -- [136]
+	"GetNumAuctionItems", -- [137]
+	"GetOwnerAuctionItems", -- [138]
+	"GetSelectedAuctionItem", -- [139]
+	"IsAuctionSortReversed", -- [140]
+	"PlaceAuctionBid", -- [141]
+	"QueryAuctionItems", -- [142]
+	"SetAuctionsTabShowing", -- [143]
+	"SetSelectedAuctionItem", -- [144]
+	"SortAuctionItems", -- [145]
+	"StartAuction", -- [146]
+	"BankButtonIDToInvSlotID", -- [148]
+	"CloseBankFrame", -- [149]
+	"GetBankSlotCost", -- [150]
+	"GetNumBankSlots", -- [151]
+	"PurchaseSlot", -- [152]
+	"AcceptAreaSpiritHeal", -- [154]
+	"AcceptBattlefieldPort", -- [155]
+	"CancelAreaSpiritHeal", -- [156]
+	"CanJoinBattlefieldAsGroup", -- [157]
+	"CheckSpiritHealerDist", -- [158]
+	"GetAreaSpiritHealerTime", -- [159]
+	"GetBattlefieldEstimatedWaitTime", -- [160]
+	"GetBattlefieldFlagPosition", -- [161]
+	"GetBattlefieldInstanceExpiration", -- [162]
+	"GetBattlefieldInstanceRunTime", -- [163]
+	"GetBattlefieldMapIconScale", -- [164]
+	"GetBattlefieldPortExpiration", -- [165]
+	"GetBattlefieldPosition", -- [166]
+	"GetBattlefieldScore", -- [167]
+	"GetBattlefieldStatData", -- [168]
+	"GetBattlefieldStatInfo", -- [169]
+	"GetBattlefieldStatus", -- [170]
+	"GetBattlefieldTimeWaited", -- [171]
+	"GetBattlefieldWinner", -- [172]
+	"GetBattlegroundInfo", -- [173]
+	"GetNumBattlefieldFlagPositions", -- [174]
+	"GetNumBattlefieldPositions", -- [175]
+	"GetNumBattlefieldScores", -- [176]
+	"GetNumBattlefieldStats", -- [177]
+	"GetNumWorldStateUI", -- [178]
+	"GetWintergraspWaitTime", -- [179]
+	"GetWorldStateUIInfo", -- [180]
+	"IsPVPTimerRunning", -- [181]
+	"JoinBattlefield", -- [182]
+	"LeaveBattlefield", -- [183]
+	"ReportPlayerIsPVPAFK", -- [184]
+	"RequestBattlefieldPositions", -- [185]
+	"RequestBattlefieldScoreData", -- [186]
+	"RequestBattlegroundInstanceInfo", -- [187]
+	"SetBattlefieldScoreFaction", -- [188]
+	"GetBinding", -- [190]
+	"GetBindingAction", -- [191]
+	"GetBindingKey", -- [192]
+	"GetBindingText", -- [193]
+	"GetCurrentBindingSet", -- [194]
+	"GetNumBindings", -- [195]
+	"LoadBindings", -- [196]
+	"RunBinding", -- [197]
+	"SaveBindings", -- [198]
+	"SetBinding", -- [199]
+	"SetBindingSpell", -- [200]
+	"SetBindingClick", -- [201]
+	"SetBindingItem", -- [202]
+	"SetBindingMacro", -- [203]
+	"SetConsoleKey", -- [204]
+	"SetOverrideBinding", -- [205]
+	"SetOverrideBindingSpell", -- [206]
+	"SetOverrideBindingClick", -- [207]
+	"SetOverrideBindingItem", -- [208]
+	"SetOverrideBindingMacro", -- [209]
+	"ClearOverrideBindings", -- [210]
+	"SetMouselookOverrideBinding", -- [211]
+	"IsModifierKeyDown", -- [212]
+	"IsModifiedClick", -- [213]
+	"IsMouseButtonDown", -- [214]
+	"CancelUnitBuff", -- [216]
+	"CancelShapeshiftForm", -- [217]
+	"CancelItemTempEnchantment", -- [218]
+	"GetWeaponEnchantInfo", -- [219]
+	"UnitAura", -- [220]
+	"UnitBuff", -- [221]
+	"UnitDebuff", -- [222]
+	"AddChatWindowChannel", -- [224]
+	"ChannelBan", -- [225]
+	"ChannelInvite", -- [226]
+	"ChannelKick", -- [227]
+	"ChannelModerator", -- [228]
+	"ChannelMute", -- [229]
+	"ChannelToggleAnnouncements", -- [230]
+	"ChannelUnban", -- [231]
+	"ChannelUnmoderator", -- [232]
+	"ChannelUnmute", -- [233]
+	"DisplayChannelOwner", -- [234]
+	"DeclineInvite", -- [235]
+	"EnumerateServerChannels", -- [236]
+	"GetChannelList", -- [237]
+	"GetChannelName", -- [238]
+	"GetChatWindowChannels", -- [239]
+	"JoinChannelByName", -- [240]
+	"LeaveChannelByName", -- [241]
+	"ListChannelByName", -- [242]
+	"ListChannels", -- [243]
+	"RemoveChatWindowChannel", -- [244]
+	"SendChatMessage", -- [245]
+	"SetChannelOwner", -- [246]
+	"SetChannelPassword", -- [247]
+	"AcceptResurrect", -- [249]
+	"AcceptXPLoss", -- [250]
+	"CheckBinderDist", -- [251]
+	"ConfirmBinder", -- [252]
+	"DeclineResurrect", -- [253]
+	"DestroyTotem", -- [254]
+	"GetBindLocation", -- [255]
+	"GetComboPoints", -- [256]
+	"GetCorpseRecoveryDelay", -- [257]
+	"GetCurrentTitle", -- [258]
+	"GetMirrorTimerInfo", -- [259]
+	"GetMirrorTimerProgress", -- [260]
+	"GetMoney", -- [261]
+	"GetNumTitles", -- [262]
+	"GetPlayerFacing", -- [263]
+	"GetPVPDesired", -- [264]
+	"GetReleaseTimeRemaining", -- [265]
+	"GetResSicknessDuration", -- [266]
+	"GetRestState", -- [267]
+	"GetRuneCooldown", -- [268]
+	"GetRuneCount", -- [269]
+	"GetRuneType", -- [270]
+	"GetTimeToWellRested", -- [271]
+	"GetTitleName", -- [272]
+	"GetUnitPitch", -- [273]
+	"GetXPExhaustion", -- [274]
+	"HasFullControl", -- [275]
+	"HasSoulstone", -- [276]
+	"IsFalling", -- [277]
+	"IsFlying", -- [278]
+	"IsFlyableArea", -- [279]
+	"IsIndoors", -- [280]
+	"IsMounted", -- [281]
+	"IsOutdoors", -- [282]
+	"IsOutOfBounds", -- [283]
+	"IsResting", -- [284]
+	"IsStealthed", -- [285]
+	"IsSwimming", -- [286]
+	"IsTitleKnown", -- [287]
+	"IsXPUserDisabled", -- [288]
+	"NotWhileDeadError", -- [289]
+	"ResurrectHasSickness", -- [290]
+	"ResurrectHasTimer", -- [291]
+	"ResurrectGetOfferer", -- [292]
+	"RetrieveCorpse", -- [293]
+	"SetCurrentTitle", -- [294]
+	"TargetTotem", -- [295]
+	"GetArmorPenetration", -- [296]
+	"GetAttackPowerForStat", -- [297]
+	"GetAverageItemLevel", -- [298]
+	"GetBlockChance", -- [299]
+	"GetCombatRating", -- [300]
+	"GetCombatRatingBonus", -- [301]
+	"GetCritChance", -- [302]
+	"GetCritChanceFromAgility", -- [303]
+	"GetDodgeChance", -- [304]
+	"GetExpertise", -- [305]
+	"GetExpertisePercent", -- [306]
+	"GetManaRegen", -- [307]
+	"GetMaxCombatRatingBonus", -- [308]
+	"GetParryChance", -- [309]
+	"GetPetSpellBonusDamage", -- [310]
+	"GetPowerRegen", -- [311]
+	"GetSpellBonusDamage", -- [312]
+	"GetRangedCritChance", -- [313]
+	"GetSpellBonusHealing", -- [314]
+	"GetSpellCritChance", -- [315]
+	"GetShieldBlock", -- [316]
+	"GetSpellCritChanceFromIntellect", -- [317]
+	"GetSpellPenetration", -- [318]
+	"AddChatWindowChannel", -- [319]
+	"ChangeChatColor", -- [320]
+	"ChatFrame_AddChannel", -- [321]
+	"ChatFrame_AddMessageEventFilter", -- [322]
+	"ChatFrame_GetMessageEventFilters", -- [323]
+	"ChatFrame_OnHyperlinkShow", -- [324]
+	"ChatFrame_RemoveMessageEventFilter", -- [325]
+	"GetAutoCompleteResults", -- [326]
+	"GetChatTypeIndex", -- [327]
+	"GetChatWindowChannels", -- [328]
+	"GetChatWindowInfo", -- [329]
+	"GetChatWindowMessages", -- [330]
+	"JoinChannelByName", -- [331]
+	"LoggingChat", -- [332]
+	"LoggingCombat", -- [333]
+	"RemoveChatWindowChannel", -- [334]
+	"RemoveChatWindowMessages", -- [335]
+	"SetChatWindowAlpha", -- [336]
+	"SetChatWindowColor", -- [337]
+	"SetChatWindowDocked", -- [338]
+	"SetChatWindowLocked", -- [339]
+	"SetChatWindowName", -- [340]
+	"SetChatWindowShown", -- [341]
+	"SetChatWindowSize", -- [342]
+	"SetChatWindowUninteractable", -- [343]
+	"DoEmote", -- [345]
+	"GetDefaultLanguage", -- [346]
+	"GetLanguageByIndex", -- [347]
+	"GetNumLanguages", -- [348]
+	"GetRegisteredAddonMessagePrefixes", -- [349]
+	"IsAddonMessagePrefixRegistered", -- [350]
+	"RegisterAddonMessagePrefix", -- [352]
+	"SendAddonMessage", -- [353]
+	"SendChatMessage", -- [354]
+	"CallCompanion", -- [356]
+	"DismissCompanion", -- [357]
+	"GetCompanionInfo", -- [358]
+	"GetNumCompanions", -- [359]
+	"GetCompanionCooldown", -- [360]
+	"PickupCompanion", -- [361]
+	"SummonRandomCritter", -- [362]
+	"ContainerIDToInventoryID", -- [364]
+	"GetBagName", -- [365]
+	"GetContainerItemCooldown", -- [366]
+	"GetContainerItemDurability", -- [367]
+	"GetContainerItemGems", -- [368]
+	"GetContainerItemID", -- [369]
+	"GetContainerItemInfo", -- [370]
+	"GetContainerItemLink", -- [371]
+	"GetContainerNumSlots", -- [372]
+	"GetContainerItemQuestInfo", -- [373]
+	"GetContainerNumFreeSlots", -- [374]
+	"OpenAllBags", -- [376]
+	"CloseAllBags", -- [377]
+	"PickupBagFromSlot", -- [378]
+	"PickupContainerItem", -- [379]
+	"PutItemInBackpack", -- [380]
+	"PutItemInBag", -- [381]
+	"PutKeyInKeyRing", -- [382]
+	"SplitContainerItem", -- [383]
+	"ToggleBackpack", -- [384]
+	"ToggleBag", -- [385]
+	"GetCoinText", -- [388]
+	"GetCoinTextureString", -- [389]
+	"GetCurrencyInfo", -- [390]
+	"GetCurrencyListSize", -- [391]
+	"GetCurrencyListInfo", -- [392]
+	"ExpandCurrencyList", -- [393]
+	"SetCurrencyUnused", -- [394]
+	"GetNumWatchedTokens", -- [395]
+	"GetBackpackCurrencyInfo", -- [396]
+	"SetCurrencyBackpack", -- [397]
+	"AutoEquipCursorItem", -- [399]
+	"ClearCursor", -- [400]
+	"CursorCanGoInSlot", -- [401]
+	"CursorHasItem", -- [402]
+	"CursorHasMoney", -- [403]
+	"CursorHasSpell", -- [404]
+	"DeleteCursorItem", -- [405]
+	"DropCursorMoney", -- [406]
+	"DropItemOnUnit", -- [407]
+	"EquipCursorItem", -- [408]
+	"GetCursorInfo", -- [409]
+	"GetCursorPosition", -- [410]
+	"HideRepairCursor", -- [411]
+	"InRepairMode", -- [412]
+	"PickupAction", -- [413]
+	"PickupBagFromSlot", -- [414]
+	"PickupContainerItem", -- [415]
+	"PickupInventoryItem", -- [416]
+	"PickupItem", -- [417]
+	"PickupMacro", -- [418]
+	"PickupMerchantItem", -- [419]
+	"PickupPetAction", -- [420]
+	"PickupSpell", -- [421]
+	"PickupStablePet", -- [422]
+	"PickupTradeMoney", -- [423]
+	"PlaceAction", -- [424]
+	"PutItemInBackpack", -- [425]
+	"PutItemInBag", -- [426]
+	"ResetCursor", -- [427]
+	"SetCursor", -- [428]
+	"ShowContainerSellCursor", -- [429]
+	"ShowInspectCursor", -- [430]
+	"ShowInventorySellCursor", -- [431]
+	"ShowMerchantSellCursor", -- [432]
+	"ShowRepairCursor", -- [433]
+	"SplitContainerItem", -- [434]
+	"GetWeaponEnchantInfo", -- [435]
+	"ReplaceEnchant", -- [436]
+	"ReplaceTradeEnchant", -- [437]
+	"BindEnchant", -- [438]
+	"CollapseFactionHeader", -- [439]
+	"CollapseAllFactionHeaders", -- [440]
+	"ExpandFactionHeader", -- [441]
+	"ExpandAllFactionHeaders", -- [442]
+	"FactionToggleAtWar", -- [443]
+	"GetFactionInfo", -- [444]
+	"GetNumFactions", -- [445]
+	"GetSelectedFaction", -- [446]
+	"GetWatchedFactionInfo", -- [447]
+	"IsFactionInactive", -- [448]
+	"SetFactionActive", -- [449]
+	"SetFactionInactive", -- [450]
+	"SetSelectedFaction", -- [451]
+	"SetWatchedFactionIndex", -- [452]
+	"UnitFactionGroup", -- [453]
+	"CreateFrame", -- [454]
+	"CreateFont", -- [455]
+	"GetFramesRegisteredForEvent", -- [456]
+	"GetNumFrames", -- [457]
+	"EnumerateFrames", -- [458]
+	"GetMouseFocus", -- [459]
+	"ToggleDropDownMenu", -- [460]
+	"UIFrameFadeIn", -- [461]
+	"UIFrameFadeOut", -- [462]
+	"UIFrameFlash", -- [463]
+	"EasyMenu", -- [464]
+	"AddFriend", -- [466]
+	"AddOrRemoveFriend", -- [467]
+	"GetFriendInfo", -- [468]
+	"SetFriendNotes", -- [469]
+	"GetNumFriends", -- [470]
+	"GetSelectedFriend", -- [471]
+	"RemoveFriend", -- [472]
+	"SetSelectedFriend", -- [473]
+	"ShowFriends", -- [474]
+	"ToggleFriendsFrame", -- [475]
+	"GetNumGlyphSockets", -- [477]
+	"GetGlyphSocketInfo", -- [478]
+	"GetGlyphLink", -- [479]
+	"GlyphMatchesSocket", -- [480]
+	"PlaceGlyphInSocket", -- [481]
+	"RemoveGlyphFromSocket", -- [482]
+	"SpellCanTargetGlyph", -- [483]
+	"CanComplainChat", -- [485]
+	"CanComplainInboxItem", -- [486]
+	"ComplainChat", -- [487]
+	"ComplainInboxItem", -- [488]
+	"CloseGossip", -- [501]
+	"ForceGossip", -- [502]
+	"GetGossipActiveQuests", -- [503]
+	"GetGossipAvailableQuests", -- [504]
+	"GetGossipOptions", -- [505]
+	"GetGossipText", -- [506]
+	"GetNumGossipActiveQuests", -- [507]
+	"GetNumGossipAvailableQuests", -- [508]
+	"GetNumGossipOptions", -- [509]
+	"SelectGossipActiveQuest", -- [510]
+	"SelectGossipAvailableQuest", -- [511]
+	"SelectGossipOption", -- [512]
+	"AcceptGroup", -- [514]
+	"ConfirmReadyCheck", -- [515]
+	"ConvertToRaid", -- [516]
+	"DeclineGroup", -- [517]
+	"DoReadyCheck", -- [518]
+	"GetLootMethod", -- [519]
+	"GetLootThreshold", -- [520]
+	"GetMasterLootCandidate", -- [521]
+	"GetNumPartyMembers", -- [522]
+	"GetRealNumPartyMembers", -- [523]
+	"GetPartyLeaderIndex", -- [524]
+	"GetPartyMember", -- [525]
+	"InviteUnit", -- [526]
+	"IsPartyLeader", -- [527]
+	"LeaveParty", -- [528]
+	"PromoteToLeader", -- [529]
+	"SetLootMethod", -- [530]
+	"SetLootThreshold", -- [531]
+	"UninviteUnit", -- [532]
+	"UnitInParty", -- [533]
+	"UnitIsPartyLeader", -- [534]
+	"AcceptGuild", -- [536]
+	"BuyGuildCharter", -- [537]
+	"CanEditGuildEvent", -- [538]
+	"CanEditGuildInfo", -- [539]
+	"CanEditMOTD", -- [540]
+	"CanEditOfficerNote", -- [541]
+	"CanEditPublicNote", -- [542]
+	"CanGuildDemote", -- [543]
+	"CanGuildInvite", -- [544]
+	"CanGuildPromote", -- [545]
+	"CanGuildRemove", -- [546]
+	"CanViewOfficerNote", -- [547]
+	"CloseGuildRegistrar", -- [548]
+	"CloseGuildRoster", -- [549]
+	"CloseTabardCreation", -- [550]
+	"DeclineGuild", -- [551]
+	"GetGuildCharterCost", -- [552]
+	"GetGuildEventInfo", -- [553]
+	"GetGuildInfo", -- [554]
+	"GetGuildInfoText", -- [555]
+	"GetGuildRosterInfo", -- [556]
+	"GetGuildRosterLastOnline", -- [557]
+	"GetGuildRosterMOTD", -- [558]
+	"GetGuildRosterSelection", -- [559]
+	"GetGuildRosterShowOffline", -- [560]
+	"GetNumGuildEvents", -- [561]
+	"GetNumGuildMembers", -- [562]
+	"GetTabardCreationCost", -- [563]
+	"GetTabardInfo", -- [564]
+	"GuildControlAddRank", -- [565]
+	"GuildControlDelRank", -- [566]
+	"GuildControlGetNumRanks", -- [567]
+	"GuildControlGetRankFlags", -- [568]
+	"GuildControlGetRankName", -- [569]
+	"GuildControlSaveRank", -- [570]
+	"GuildControlSetRank", -- [571]
+	"GuildControlSetRankFlag", -- [572]
+	"GuildDemote", -- [573]
+	"GuildDisband", -- [574]
+	"GuildInfo", -- [575]
+	"GuildInvite", -- [576]
+	"GuildLeave", -- [577]
+	"GuildPromote", -- [578]
+	"GuildRoster", -- [579]
+	"GuildRosterSetOfficerNote", -- [580]
+	"GuildRosterSetPublicNote", -- [581]
+	"GuildSetMOTD", -- [582]
+	"GuildSetLeader", -- [583]
+	"GuildUninvite", -- [584]
+	"IsGuildLeader", -- [585]
+	"IsInGuild", -- [586]
+	"QueryGuildEventLog", -- [587]
+	"SetGuildInfoText", -- [588]
+	"SetGuildRosterSelection", -- [589]
+	"SetGuildRosterShowOffline", -- [590]
+	"SortGuildRoster", -- [591]
+	"UnitGetGuildXP", -- [592]
+	"AutoStoreGuildBankItem", -- [593]
+	"BuyGuildBankTab", -- [594]
+	"CanGuildBankRepair", -- [595]
+	"CanWithdrawGuildBankMoney", -- [596]
+	"CloseGuildBankFrame", -- [597]
+	"DepositGuildBankMoney", -- [598]
+	"GetCurrentGuildBankTab", -- [599]
+	"GetGuildBankItemInfo", -- [600]
+	"GetGuildBankItemLink", -- [601]
+	"GetGuildBankMoney", -- [602]
+	"GetGuildBankMoneyTransaction", -- [603]
+	"GetGuildBankTabCost", -- [604]
+	"GetGuildBankTabInfo", -- [605]
+	"GetGuildBankTabPermissions", -- [606]
+	"GetGuildBankText", -- [607]
+	"GetGuildBankTransaction", -- [608]
+	"GetGuildTabardFileNames", -- [611]
+	"GetNumGuildBankMoneyTransactions", -- [612]
+	"GetNumGuildBankTabs", -- [613]
+	"GetNumGuildBankTransactions", -- [614]
+	"PickupGuildBankItem", -- [615]
+	"PickupGuildBankMoney", -- [616]
+	"QueryGuildBankLog", -- [617]
+	"QueryGuildBankTab", -- [618]
+	"SetCurrentGuildBankTab", -- [619]
+	"SetGuildBankTabInfo", -- [620]
+	"SetGuildBankTabPermissions", -- [621]
+	"SplitGuildBankItem", -- [624]
+	"WithdrawGuildBankMoney", -- [625]
+	"GetHolidayBGHonorCurrencyBonuses", -- [627]
+	"GetInspectHonorData", -- [628]
+	"GetPVPLifetimeStats", -- [629]
+	"GetPVPRankInfo", -- [630]
+	"GetPVPRankProgress", -- [631]
+	"GetPVPSessionStats", -- [632]
+	"GetPVPYesterdayStats", -- [633]
+	"GetRandomBGHonorCurrencyBonuses", -- [634]
+	"HasInspectHonorData", -- [635]
+	"RequestInspectHonorData", -- [636]
+	"UnitPVPName", -- [637]
+	"UnitPVPRank", -- [638]
+	"AddIgnore", -- [640]
+	"AddOrDelIgnore", -- [641]
+	"DelIgnore", -- [642]
+	"GetIgnoreName", -- [643]
+	"GetNumIgnores", -- [644]
+	"GetSelectedIgnore", -- [645]
+	"SetSelectedIgnore", -- [646]
+	"CanInspect", -- [648]
+	"CheckInteractDistance", -- [649]
+	"ClearInspectPlayer", -- [650]
+	"GetInspectArenaTeamData", -- [651]
+	"HasInspectHonorData", -- [652]
+	"RequestInspectHonorData", -- [653]
+	"GetInspectHonorData", -- [654]
+	"NotifyInspect", -- [655]
+	"InspectUnit", -- [656]
+	"CanShowResetInstances", -- [658]
+	"GetBattlefieldInstanceExpiration", -- [659]
+	"GetBattlefieldInstanceInfo", -- [660]
+	"GetBattlefieldInstanceRunTime", -- [661]
+	"GetInstanceBootTimeRemaining", -- [662]
+	"GetInstanceInfo", -- [663]
+	"GetNumSavedInstances", -- [664]
+	"GetSavedInstanceInfo", -- [665]
+	"IsInInstance", -- [666]
+	"ResetInstances", -- [667]
+	"GetDungeonDifficulty", -- [668]
+	"SetDungeonDifficulty", -- [669]
+	"GetInstanceDifficulty", -- [670]
+	"GetInstanceLockTimeRemaining", -- [671]
+	"GetInstanceLockTimeRemainingEncounter", -- [672]
+	"AutoEquipCursorItem", -- [674]
+	"BankButtonIDToInvSlotID", -- [675]
+	"CancelPendingEquip", -- [676]
+	"ConfirmBindOnUse", -- [677]
+	"ContainerIDToInventoryID", -- [678]
+	"CursorCanGoInSlot", -- [679]
+	"EquipCursorItem", -- [680]
+	"EquipPendingItem", -- [681]
+	"GetInventoryAlertStatus", -- [682]
+	"GetInventoryItemBroken", -- [683]
+	"GetInventoryItemCooldown", -- [684]
+	"GetInventoryItemCount", -- [685]
+	"GetInventoryItemDurability", -- [686]
+	"GetInventoryItemGems", -- [687]
+	"GetInventoryItemID", -- [688]
+	"GetInventoryItemLink", -- [689]
+	"GetInventoryItemQuality", -- [690]
+	"GetInventoryItemTexture", -- [691]
+	"GetInventorySlotInfo", -- [692]
+	"GetWeaponEnchantInfo", -- [693]
+	"HasWandEquipped", -- [694]
+	"IsInventoryItemLocked", -- [695]
+	"KeyRingButtonIDToInvSlotID", -- [696]
+	"PickupBagFromSlot", -- [697]
+	"PickupInventoryItem", -- [698]
+	"UpdateInventoryAlertStatus", -- [699]
+	"UseInventoryItem", -- [700]
+	"EquipItemByName", -- [702]
+	"GetAuctionItemLink", -- [703]
+	"GetContainerItemLink", -- [704]
+	"GetItemCooldown", -- [705]
+	"GetItemCount", -- [706]
+	"GetItemFamily", -- [707]
+	"GetItemIcon", -- [708]
+	"GetItemInfo", -- [709]
+	"GetItemQualityColor", -- [710]
+	"GetItemSpell", -- [711]
+	"GetItemStats", -- [712]
+	"GetMerchantItemLink", -- [713]
+	"GetQuestItemLink", -- [714]
+	"GetQuestLogItemLink", -- [715]
+	"GetTradePlayerItemLink", -- [716]
+	"GetTradeSkillItemLink", -- [717]
+	"GetTradeSkillReagentItemLink", -- [718]
+	"GetTradeTargetItemLink", -- [719]
+	"IsUsableItem", -- [720]
+	"IsConsumableItem", -- [721]
+	"IsCurrentItem", -- [722]
+	"IsEquippedItem", -- [723]
+	"IsEquippableItem", -- [724]
+	"IsEquippedItemType", -- [725]
+	"IsItemInRange", -- [726]
+	"ItemHasRange", -- [727]
+	"OffhandHasWeapon", -- [728]
+	"SplitContainerItem", -- [729]
+	"SetItemRef", -- [730]
+	"AcceptSockets", -- [731]
+	"ClickSocketButton", -- [732]
+	"CloseSocketInfo", -- [733]
+	"GetSocketItemInfo", -- [734]
+	"GetSocketItemRefundable", -- [735]
+	"GetSocketItemBoundTradeable", -- [736]
+	"GetNumSockets", -- [737]
+	"GetSocketTypes", -- [738]
+	"GetExistingSocketInfo", -- [739]
+	"GetExistingSocketLink", -- [740]
+	"GetNewSocketInfo", -- [741]
+	"GetNewSocketLink", -- [742]
+	"SocketInventoryItem", -- [743]
+	"SocketContainerItem", -- [744]
+	"CloseItemText", -- [745]
+	"ItemTextGetCreator", -- [746]
+	"ItemTextGetItem", -- [747]
+	"ItemTextGetMaterial", -- [748]
+	"ItemTextGetPage", -- [749]
+	"ItemTextGetText", -- [750]
+	"ItemTextHasNextPage", -- [751]
+	"ItemTextNextPage", -- [752]
+	"ItemTextPrevPage", -- [753]
+	"GetMinimapZoneText", -- [755]
+	"GetRealZoneText", -- [756]
+	"GetSubZoneText", -- [757]
+	"GetZonePVPInfo", -- [758]
+	"GetZoneText", -- [759]
+	"CompleteLFGRoleCheck", -- [760]
+	"GetLFGDeserterExpiration", -- [761]
+	"GetLFGRandomCooldownExpiration", -- [762]
+	"GetLFGBootProposal", -- [763]
+	"GetLFGMode", -- [764]
+	"GetLFGQueueStats", -- [765]
+	"GetLFGRoles", -- [766]
+	"GetLFGRoleUpdate", -- [767]
+	"GetLFGRoleUpdateSlot", -- [768]
+	"SetLFGBootVote", -- [769]
+	"SetLFGComment", -- [770]
+	"SetLFGRoles", -- [771]
+	"UninviteUnit", -- [772]
+	"UnitGroupRolesAssigned", -- [773]
+	"UnitHasLFGDeserter", -- [774]
+	"UnitHasLFGRandomCooldown", -- [775]
+	"CloseLoot", -- [777]
+	"ConfirmBindOnUse", -- [778]
+	"ConfirmLootRoll", -- [779]
+	"ConfirmLootSlot", -- [780]
+	"GetLootMethod", -- [781]
+	"GetLootRollItemInfo", -- [782]
+	"GetLootRollItemLink", -- [783]
+	"GetLootRollTimeLeft", -- [784]
+	"GetLootSlotInfo", -- [785]
+	"GetLootSlotLink", -- [786]
+	"GetLootThreshold", -- [787]
+	"GetMasterLootCandidate", -- [788]
+	"GetNumLootItems", -- [789]
+	"GetOptOutOfLoot", -- [790]
+	"GiveMasterLoot", -- [791]
+	"IsFishingLoot", -- [792]
+	"LootSlot", -- [793]
+	"LootSlotIsCoin", -- [794]
+	"LootSlotIsCurrency", -- [795]
+	"LootSlotIsItem", -- [796]
+	"RollOnLoot", -- [797]
+	"SetLootMethod", -- [798]
+	"SetLootPortrait", -- [799]
+	"SetLootThreshold", -- [800]
+	"SetOptOutOfLoot", -- [801]
+	"CursorHasMacro", -- [804]
+	"DeleteMacro", -- [805]
+	"GetMacroBody", -- [807]
+	"GetMacroIconInfo", -- [808]
+	"GetMacroItemIconInfo", -- [809]
+	"GetMacroIndexByName", -- [810]
+	"GetMacroInfo", -- [811]
+	"GetNumMacroIcons", -- [812]
+	"GetNumMacroItemIcons", -- [813]
+	"GetNumMacros", -- [814]
+	"PickupMacro", -- [815]
+	"RunMacro", -- [816]
+	"RunMacroText", -- [817]
+	"SecureCmdOptionParse", -- [818]
+	"StopMacro", -- [819]
+	"AutoLootMailItem", -- [821]
+	"CheckInbox", -- [822]
+	"ClearSendMail", -- [823]
+	"ClickSendMailItemButton", -- [824]
+	"CloseMail", -- [825]
+	"DeleteInboxItem", -- [826]
+	"GetCoinIcon", -- [827]
+	"GetInboxHeaderInfo", -- [828]
+	"GetInboxItem", -- [829]
+	"GetInboxItemLink", -- [830]
+	"GetInboxNumItems", -- [831]
+	"GetInboxText", -- [832]
+	"GetInboxInvoiceInfo", -- [833]
+	"GetNumPackages", -- [834]
+	"GetNumStationeries", -- [835]
+	"GetPackageInfo", -- [836]
+	"GetSelectedStationeryTexture", -- [837]
+	"GetSendMailCOD", -- [838]
+	"GetSendMailItem", -- [839]
+	"GetSendMailItemLink", -- [840]
+	"GetSendMailMoney", -- [841]
+	"GetSendMailPrice", -- [842]
+	"GetStationeryInfo", -- [843]
+	"HasNewMail", -- [844]
+	"InboxItemCanDelete", -- [845]
+	"ReturnInboxItem", -- [846]
+	"SelectPackage", -- [847]
+	"SelectStationery", -- [848]
+	"SendMail", -- [849]
+	"SetSendMailCOD", -- [850]
+	"SetSendMailMoney", -- [851]
+	"TakeInboxItem", -- [852]
+	"TakeInboxMoney", -- [853]
+	"TakeInboxTextItem", -- [854]
+	"ClickLandmark", -- [856]
+	"GetCorpseMapPosition", -- [857]
+	"GetCurrentMapContinent", -- [858]
+	"GetCurrentMapDungeonLevel", -- [859]
+	"GetNumDungeonMapLevels", -- [860]
+	"GetCurrentMapAreaID", -- [861]
+	"GetCurrentMapZone", -- [862]
+	"GetMapContinents", -- [863]
+	"GetMapDebugObjectInfo", -- [864]
+	"GetMapInfo", -- [865]
+	"GetMapLandmarkInfo", -- [866]
+	"GetMapOverlayInfo", -- [867]
+	"GetMapZones", -- [868]
+	"GetNumMapDebugObjects", -- [869]
+	"GetNumMapLandmarks", -- [870]
+	"GetNumMapOverlays", -- [871]
+	"GetPlayerMapPosition", -- [872]
+	"ProcessMapClick", -- [873]
+	"RequestBattlefieldPositions", -- [874]
+	"SetDungeonMapLevel", -- [875]
+	"SetMapByID", -- [876]
+	"SetMapToCurrentZone", -- [877]
+	"SetMapZoom", -- [878]
+	"SetupFullscreenScale", -- [879]
+	"UpdateMapHighlight", -- [880]
+	"CreateWorldMapArrowFrame", -- [881]
+	"UpdateWorldMapArrowFrames", -- [882]
+	"ShowWorldMapArrowFrame", -- [883]
+	"PositionWorldMapArrowFrame", -- [884]
+	"ZoomOut", -- [885]
+	"BuyMerchantItem", -- [887]
+	"BuybackItem", -- [888]
+	"CanMerchantRepair", -- [889]
+	"CloseMerchant", -- [890]
+	"GetBuybackItemInfo", -- [891]
+	"GetBuybackItemLink", -- [892]
+	"GetMerchantItemCostInfo", -- [893]
+	"GetMerchantItemCostItem", -- [894]
+	"GetMerchantItemInfo", -- [895]
+	"GetMerchantItemLink", -- [896]
+	"GetMerchantItemMaxStack", -- [897]
+	"GetMerchantNumItems", -- [898]
+	"GetRepairAllCost", -- [899]
+	"HideRepairCursor", -- [900]
+	"InRepairMode", -- [901]
+	"PickupMerchantItem", -- [902]
+	"RepairAllItems", -- [903]
+	"ShowMerchantSellCursor", -- [904]
+	"ShowRepairCursor", -- [905]
+	"GetNumBuybackItems", -- [906]
+	"CastPetAction", -- [908]
+	"ClosePetStables", -- [909]
+	"DropItemOnUnit", -- [910]
+	"GetPetActionCooldown", -- [911]
+	"GetPetActionInfo", -- [912]
+	"GetPetActionSlotUsable", -- [913]
+	"GetPetActionsUsable", -- [914]
+	"GetPetExperience", -- [915]
+	"GetPetFoodTypes", -- [916]
+	"GetPetHappiness", -- [917]
+	"GetPetIcon", -- [918]
+	"GetPetTimeRemaining", -- [919]
+	"GetStablePetFoodTypes", -- [920]
+	"GetStablePetInfo", -- [921]
+	"HasPetSpells", -- [922]
+	"HasPetUI", -- [923]
+	"PetAbandon", -- [924]
+	"PetAggressiveMode", -- [925]
+	"PetAttack", -- [926]
+	"IsPetAttackActive", -- [927]
+	"PetStopAttack", -- [928]
+	"PetCanBeAbandoned", -- [929]
+	"PetCanBeDismissed", -- [930]
+	"PetCanBeRenamed", -- [931]
+	"PetDefensiveMode", -- [932]
+	"PetDismiss", -- [933]
+	"PetFollow", -- [934]
+	"PetHasActionBar", -- [935]
+	"PetPassiveMode", -- [936]
+	"PetRename", -- [937]
+	"PetWait", -- [938]
+	"PickupPetAction", -- [939]
+	"PickupStablePet", -- [940]
+	"SetPetStablePaperdoll", -- [941]
+	"TogglePetAutocast", -- [942]
+	"ToggleSpellAutocast", -- [943]
+	"GetSpellAutocast", -- [944]
+	"AddQuestWatch", -- [946]
+	"GetActiveLevel", -- [947]
+	"GetActiveTitle", -- [948]
+	"GetAvailableLevel", -- [949]
+	"GetAvailableTitle", -- [950]
+	"GetAvailableQuestInfo", -- [951]
+	"GetGreetingText", -- [952]
+	"GetNumQuestLeaderBoards", -- [953]
+	"GetNumQuestWatches", -- [954]
+	"GetObjectiveText", -- [955]
+	"GetProgressText", -- [956]
+	"GetQuestGreenRange", -- [957]
+	"GetQuestIndexForWatch", -- [958]
+	"GetQuestLink", -- [959]
+	"GetQuestLogGroupNum", -- [960]
+	"GetQuestLogLeaderBoard", -- [961]
+	"GetQuestLogTitle", -- [962]
+	"GetQuestReward", -- [963]
+	"GetRewardArenaPoints", -- [964]
+	"GetRewardHonor", -- [965]
+	"GetRewardMoney", -- [966]
+	"GetRewardSpell", -- [967]
+	"GetRewardTalents", -- [968]
+	"GetRewardText", -- [969]
+	"GetRewardTitle", -- [970]
+	"GetRewardXP", -- [971]
+	"IsQuestWatched", -- [972]
+	"IsUnitOnQuest", -- [973]
+	"QuestFlagsPVP", -- [974]
+	"QuestGetAutoAccept", -- [975]
+	"RemoveQuestWatch", -- [976]
+	"ShiftQuestWatches", -- [977]
+	"SortQuestWatches", -- [978]
+	"QueryQuestsCompleted", -- [979]
+	"GetQuestsCompleted", -- [980]
+	"QuestIsDaily", -- [981]
+	"QuestIsWeekly", -- [982]
+	"ClearRaidMarker", -- [984]
+	"ConvertToRaid", -- [985]
+	"ConvertToParty", -- [986]
+	"DemoteAssistant", -- [987]
+	"GetAllowLowLevelRaid", -- [988]
+	"GetNumRaidMembers", -- [989]
+	"GetRealNumRaidMembers", -- [990]
+	"GetPartyAssignment", -- [991]
+	"GetPartyAssignment", -- [992]
+	"GetRaidRosterInfo", -- [993]
+	"GetRaidTargetIndex", -- [994]
+	"GetReadyCheckStatus", -- [995]
+	"InitiateRolePoll", -- [996]
+	"IsRaidLeader", -- [997]
+	"IsRaidOfficer", -- [998]
+	"PlaceRaidMarker", -- [999]
+	"PromoteToAssistant", -- [1000]
+	"RequestRaidInfo", -- [1001]
+	"SetPartyAssignment", -- [1002]
+	"SetAllowLowLevelRaid", -- [1003]
+	"SetRaidRosterSelection", -- [1004]
+	"SetRaidSubgroup", -- [1005]
+	"SwapRaidSubgroup", -- [1006]
+	"SetRaidTarget", -- [1007]
+	"UnitInRaid", -- [1008]
+	"LFGGetDungeonInfoByID", -- [1009]
+	"GetInstanceLockTimeRemainingEncounter", -- [1010]
+	"RefreshLFGList", -- [1011]
+	"SearchLFGGetEncounterResults", -- [1012]
+	"SearchLFGGetJoinedID", -- [1013]
+	"SearchLFGGetNumResults", -- [1014]
+	"SearchLFGGetPartyResults", -- [1015]
+	"SearchLFGGetResults", -- [1016]
+	"SearchLFGJoin", -- [1017]
+	"SearchLFGLeave", -- [1018]
+	"SearchLFGSort", -- [1019]
+	"SetLFGComment", -- [1020]
+	"ClearAllLFGDungeons", -- [1021]
+	"JoinLFG", -- [1022]
+	"LeaveLFG", -- [1023]
+	"RequestLFDPartyLockInfo", -- [1024]
+	"RequestLFDPlayerLockInfo", -- [1025]
+	"SetLFGDungeon", -- [1026]
+	"SetLFGDungeonEnabled", -- [1027]
+	"SetLFGHeaderCollapsed", -- [1028]
+	"GetAddOnCPUUsage", -- [1029]
+	"GetAddOnMemoryUsage", -- [1030]
+	"GetEventCPUUsage", -- [1031]
+	"GetFrameCPUUsage", -- [1032]
+	"GetFunctionCPUUsage", -- [1033]
+	"GetScriptCPUUsage", -- [1034]
+	"ResetCPUUsage", -- [1035]
+	"UpdateAddOnCPUUsage", -- [1036]
+	"UpdateAddOnMemoryUsage", -- [1037]
+	"issecure", -- [1038]
+	"forceinsecure", -- [1039]
+	"issecurevariable", -- [1040]
+	"securecall", -- [1041]
+	"hooksecurefunc", -- [1042]
+	"InCombatLockdown", -- [1043]
+	"CombatTextSetActiveUnit", -- [1046]
+	"DownloadSettings", -- [1047]
+	"GetCVar", -- [1048]
+	"GetCVarDefault", -- [1049]
+	"GetCVarBool", -- [1050]
+	"GetCVarInfo", -- [1051]
+	"GetCurrentMultisampleFormat", -- [1052]
+	"GetCurrentResolution", -- [1053]
+	"GetGamma", -- [1054]
+	"GetMultisampleFormats", -- [1055]
+	"GetRefreshRates", -- [1056]
+	"GetScreenResolutions", -- [1057]
+	"GetVideoCaps", -- [1058]
+	"IsThreatWarningEnabled", -- [1059]
+	"RegisterCVar", -- [1060]
+	"ResetPerformanceValues", -- [1061]
+	"ResetTutorials", -- [1062]
+	"SetCVar", -- [1063]
+	"SetEuropeanNumbers", -- [1064]
+	"SetGamma", -- [1065]
+	"SetLayoutMode", -- [1066]
+	"SetMultisampleFormat", -- [1067]
+	"SetScreenResolution", -- [1068]
+	"ShowCloak", -- [1069]
+	"ShowHelm", -- [1070]
+	"ShowNumericThreat", -- [1071]
+	"ShowingCloak", -- [1072]
+	"ShowingHelm", -- [1073]
+	"UploadSettings", -- [1074]
+	"AbandonSkill", -- [1076]
+	"CastShapeshiftForm", -- [1078]
+	"CastSpell", -- [1079]
+	"CastSpellByName", -- [1080]
+	"GetMultiCastTotemSpells", -- [1081]
+	"GetNumShapeshiftForms", -- [1082]
+	"GetNumSpellTabs", -- [1083]
+	"GetShapeshiftForm", -- [1084]
+	"GetShapeshiftFormCooldown", -- [1085]
+	"GetShapeshiftFormInfo", -- [1086]
+	"GetSpellAutocast", -- [1087]
+	"GetSpellBookItemInfo", -- [1088]
+	"GetSpellBookItemName", -- [1089]
+	"GetSpellCooldown", -- [1090]
+	"GetSpellDescription", -- [1091]
+	"GetSpellInfo", -- [1092]
+	"GetSpellLink", -- [1093]
+	"GetSpellTabInfo", -- [1094]
+	"GetSpellTexture", -- [1095]
+	"GetTotemInfo", -- [1096]
+	"IsAttackSpell", -- [1097]
+	"IsAutoRepeatSpell", -- [1098]
+	"IsPassiveSpell", -- [1099]
+	"IsSpellInRange", -- [1100]
+	"IsUsableSpell", -- [1101]
+	"PickupSpell", -- [1102]
+	"QueryCastSequence", -- [1103]
+	"SetMultiCastSpell", -- [1104]
+	"SpellCanTargetUnit", -- [1105]
+	"SpellHasRange", -- [1106]
+	"SpellIsTargeting", -- [1107]
+	"SpellStopCasting", -- [1108]
+	"SpellStopTargeting", -- [1109]
+	"SpellTargetUnit", -- [1110]
+	"ToggleSpellAutocast", -- [1111]
+	"UnitCastingInfo", -- [1112]
+	"UnitChannelInfo", -- [1113]
+	"ConsoleExec", -- [1115]
+	"DetectWowMouse", -- [1116]
+	"GetBuildInfo", -- [1117]
+	"geterrorhandler", -- [1118]
+	"GetCurrentKeyBoardFocus", -- [1119]
+	"GetExistingLocales", -- [1120]
+	"GetFramerate", -- [1121]
+	"GetGameTime", -- [1122]
+	"GetLocale", -- [1123]
+	"GetCursorPosition", -- [1124]
+	"GetNetStats", -- [1125]
+	"GetRealmName", -- [1126]
+	"GetScreenHeight", -- [1127]
+	"GetScreenWidth", -- [1128]
+	"GetText", -- [1129]
+	"GetTime", -- [1130]
+	"IsAltKeyDown", -- [1131]
+	"InCinematic", -- [1132]
+	"IsControlKeyDown", -- [1133]
+	"IsDebugBuild", -- [1134]
+	"IsDesaturateSupported", -- [1135]
+	"IsLeftAltKeyDown", -- [1136]
+	"IsLeftControlKeyDown", -- [1137]
+	"IsLeftShiftKeyDown", -- [1138]
+	"IsLinuxClient", -- [1139]
+	"IsLoggedIn", -- [1140]
+	"IsMacClient", -- [1141]
+	"IsRightAltKeyDown", -- [1142]
+	"IsRightControlKeyDown", -- [1143]
+	"IsRightShiftKeyDown", -- [1144]
+	"IsShiftKeyDown", -- [1145]
+	"IsStereoVideoAvailable", -- [1146]
+	"IsWindowsClient", -- [1147]
+	"OpeningCinematic", -- [1148]
+	"PlayMusic", -- [1149]
+	"PlaySound", -- [1150]
+	"PlaySoundFile", -- [1151]
+	"ReloadUI", -- [1152]
+	"RepopMe", -- [1153]
+	"RequestTimePlayed", -- [1154]
+	"RestartGx", -- [1155]
+	"RunScript", -- [1156]
+	"Screenshot", -- [1157]
+	"SetAutoDeclineGuildInvites", -- [1158]
+	"seterrorhandler", -- [1159]
+	"StopCinematic", -- [1160]
+	"StopMusic", -- [1161]
+	"UIParentLoadAddOn", -- [1162]
+	"TakeScreenshot", -- [1163]
+	"BuyTrainerService", -- [1168]
+	"CheckTalentMasterDist", -- [1169]
+	"ConfirmTalentWipe", -- [1170]
+	"GetActiveTalentGroup", -- [1171]
+	"GetNumTalentTabs", -- [1172]
+	"GetNumTalents", -- [1173]
+	"GetTalentInfo", -- [1174]
+	"GetTalentLink", -- [1175]
+	"GetTalentPrereqs", -- [1176]
+	"GetTalentTabInfo", -- [1177]
+	"LearnTalent", -- [1178]
+	"SetActiveTalentGroup", -- [1179]
+	"GetNumTalentGroups", -- [1180]
+	"GetActiveTalentGroup", -- [1181]
+	"AddPreviewTalentPoints", -- [1182]
+	"GetGroupPreviewTalentPointsSpent", -- [1183]
+	"GetPreviewTalentPointsSpent", -- [1184]
+	"GetUnspentTalentPoints", -- [1185]
+	"LearnPreviewTalents", -- [1186]
+	"ResetGroupPreviewTalentPoints", -- [1187]
+	"ResetPreviewTalentPoints", -- [1188]
+	"AssistUnit", -- [1190]
+	"AttackTarget", -- [1191]
+	"ClearTarget", -- [1192]
+	"ClickTargetTradeButton", -- [1193]
+	"TargetLastEnemy", -- [1194]
+	"TargetLastTarget", -- [1195]
+	"TargetNearestEnemy", -- [1196]
+	"TargetNearestEnemyPlayer", -- [1197]
+	"TargetNearestFriend", -- [1198]
+	"TargetNearestFriendPlayer", -- [1199]
+	"TargetNearestPartyMember", -- [1200]
+	"TargetNearestRaidMember", -- [1201]
+	"TargetUnit", -- [1202]
+	"ToggleBackpack", -- [1204]
+	"ToggleBag", -- [1205]
+	"ToggleCharacter", -- [1206]
+	"ToggleFriendsFrame", -- [1207]
+	"ToggleSpellBook", -- [1208]
+	"TradeSkill", -- [1209]
+	"CloseTradeSkill", -- [1210]
+	"CollapseTradeSkillSubClass", -- [1211]
+	"PickupPlayerMoney", -- [1212]
+	"PickupTradeMoney", -- [1213]
+	"SetTradeMoney", -- [1214]
+	"ReplaceTradeEnchant", -- [1215]
+	"AssistUnit", -- [1217]
+	"CheckInteractDistance", -- [1218]
+	"DropItemOnUnit", -- [1219]
+	"FollowUnit", -- [1220]
+	"FocusUnit", -- [1221]
+	"ClearFocus", -- [1222]
+	"GetUnitName", -- [1223]
+	"GetUnitPitch", -- [1224]
+	"GetUnitSpeed", -- [1225]
+	"InviteUnit", -- [1226]
+	"IsUnitOnQuest", -- [1227]
+	"SpellCanTargetUnit", -- [1228]
+	"SpellTargetUnit", -- [1229]
+	"TargetUnit", -- [1230]
+	"UnitAffectingCombat", -- [1231]
+	"UnitArmor", -- [1232]
+	"UnitAttackBothHands", -- [1233]
+	"UnitAttackPower", -- [1234]
+	"UnitAttackSpeed", -- [1235]
+	"UnitAura", -- [1236]
+	"UnitBuff", -- [1237]
+	"UnitCanAssist", -- [1238]
+	"UnitCanAttack", -- [1239]
+	"UnitCanCooperate", -- [1240]
+	"UnitClass", -- [1241]
+	"UnitClassification", -- [1242]
+	"UnitCreatureFamily", -- [1243]
+	"UnitCreatureType", -- [1244]
+	"UnitDamage", -- [1245]
+	"UnitDebuff", -- [1246]
+	"UnitDefense", -- [1247]
+	"UnitDetailedThreatSituation", -- [1248]
+	"UnitExists", -- [1249]
+	"UnitFactionGroup", -- [1250]
+	"UnitGroupRolesAssigned", -- [1251]
+	"UnitGUID", -- [1252]
+	"GetPlayerInfoByGUID", -- [1253]
+	"UnitHasLFGDeserter", -- [1254]
+	"UnitHasLFGRandomCooldown", -- [1255]
+	"UnitHasRelicSlot", -- [1256]
+	"UnitHealth", -- [1257]
+	"UnitHealthMax", -- [1258]
+	"UnitInParty", -- [1259]
+	"UnitInRaid", -- [1260]
+	"UnitInBattleground", -- [1261]
+	"UnitIsInMyGuild", -- [1262]
+	"UnitInRange", -- [1263]
+	"UnitIsAFK", -- [1264]
+	"UnitIsCharmed", -- [1265]
+	"UnitIsConnected", -- [1266]
+	"UnitIsCorpse", -- [1267]
+	"UnitIsDead", -- [1268]
+	"UnitIsDeadOrGhost", -- [1269]
+	"UnitIsDND", -- [1270]
+	"UnitIsEnemy", -- [1271]
+	"UnitIsFeignDeath", -- [1272]
+	"UnitIsFriend", -- [1273]
+	"UnitIsGhost", -- [1274]
+	"UnitIsPVP", -- [1275]
+	"UnitIsPVPFreeForAll", -- [1276]
+	"UnitIsPVPSanctuary", -- [1277]
+	"UnitIsPartyLeader", -- [1278]
+	"UnitIsPlayer", -- [1279]
+	"UnitIsPossessed", -- [1280]
+	"UnitIsRaidOfficer", -- [1281]
+	"UnitIsSameServer", -- [1282]
+	"UnitIsTapped", -- [1283]
+	"UnitIsTappedByPlayer", -- [1284]
+	"UnitIsTappedByAllThreatList", -- [1285]
+	"UnitIsTrivial", -- [1286]
+	"UnitIsUnit", -- [1287]
+	"UnitIsVisible", -- [1288]
+	"UnitLevel", -- [1289]
+	"UnitMana", -- [1290]
+	"UnitManaMax", -- [1291]
+	"UnitName", -- [1292]
+	"UnitOnTaxi", -- [1293]
+	"UnitPlayerControlled", -- [1294]
+	"UnitPlayerOrPetInParty", -- [1295]
+	"UnitPlayerOrPetInRaid", -- [1296]
+	"UnitPVPName", -- [1297]
+	"UnitPVPRank", -- [1298]
+	"UnitPower", -- [1299]
+	"UnitPowerMax", -- [1300]
+	"UnitPowerType", -- [1301]
+	"UnitRace", -- [1302]
+	"UnitRangedAttack", -- [1303]
+	"UnitRangedAttackPower", -- [1304]
+	"UnitRangedDamage", -- [1305]
+	"UnitReaction", -- [1306]
+	"UnitResistance", -- [1307]
+	"UnitSelectionColor", -- [1308]
+	"UnitSex", -- [1309]
+	"UnitStat", -- [1310]
+	"UnitThreatSituation", -- [1311]
+	"UnitUsingVehicle", -- [1312]
+	"GetThreatStatusColor", -- [1313]
+	"UnitXP", -- [1314]
+	"UnitXPMax", -- [1315]
+	"SetPortraitTexture", -- [1316]
+	"SetPortraitToTexture", -- [1317]
+	"tinsert", -- [1318]
+}
+
+-- endp