local ElvUI_EltreumUI, E, L, V, P, G = unpack(select(2, ...))
local sort = sort
local pairs = pairs
local tinsert = table.insert
local tconcat = table.concat
local PlaySoundFile = PlaySoundFile

--Author list
local AUTHORS = {
	'|cff82B4ffEltreum|r',
}

-- Credits and Thank yous list
local THANKYOU = {
	'|cff0070DEAzilroka|r',
	'|cffC41F3BKringel|r',
	'|cFF99CCFFAftermathh|r',
	'|cffF58CBARepooc|r Especially for the huge helps',
	'Blazeflack',
	'Botanica',
	'|T134297:15:15:0:0:64:64:5:59:5:59|t |cffff7d0aMerathilis|r',
	'|cff9482c9Darth Predator|r',
	'Caedis',
	'Elv',
	E:TextGradient('Simpy but his name might be shorter sometimes even though he fixes a lot of things', 1,.42,.78, 1,.56,.68, .66,.99,.98, .77,.52,1, 1,.48,.81, .98,.95,.68),
	'Tukui Community',
	'Shrom',
	'Pat',
	'|cff00c0faBenik|r',
	'|T136012:15:15:0:0:64:64:5:59:5:59|t |cff006fdcRubgrsch|r |T656558:15:15:0:0:64:64:5:59:5:59|t',
	'|TInterface/AddOns/ElvUI/Media/ChatLogos/FoxWarlock:15:15:0:0:64:64:5:59:5:59|t |cff8788EENihilistzsche|r',
	'|TInterface/AddOns/ElvUI/Media/ChatLogos/Clover:15:15:0:0:64:64:5:59:5:59|t |cffFF7D0ALuckyone|r Especially for allowing the usage of his installer/plugin as a model',
	'AcidWeb |TInterface/AddOns/ElvUI/Media/ChatLogos/Gem:15:15:-1:2:64:64:6:60:8:60|t',
}

-- SortList
local function SortList(a, b)
	return E:StripString(a) < E:StripString(b)
end

sort(AUTHORS, SortList)
sort(THANKYOU, SortList)

-- Author table
for _, name in pairs(AUTHORS) do
	tinsert(ElvUI_EltreumUI.CreditsList, name)
end
local AUTHORS_STRING = tconcat(AUTHORS, '|n')

-- Thank you table
for _, name in pairs(THANKYOU) do
	tinsert(ElvUI_EltreumUI.CreditsList, name)
end
local THANKYOU_STRING = tconcat(THANKYOU, '|n')

-- EltreumUI ingame options Retail
if ElvUI_EltreumUI.Retail then
	function ElvUI_EltreumUI:Configtable()
		-- Add EltreumUI version on top of the ElvUI config
		E.Options.name = E.Options.name .. " + " .. ElvUI_EltreumUI.Name .. format(" |cffffffff%s|r", ElvUI_EltreumUI.Version)
		E.Options.args.ElvUI_EltreumUI = {
			order = 6,
			type = 'group',
			name = ElvUI_EltreumUI.Name,
			args = {
				logo = {
					type = 'description',
					name = "",
					order = 6,
					image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\logohq', 320, 80 end,
				},
				installer = {
					order = 7,
					type = 'group',
					name = L["Installer"],
					icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\install',
					args = {
						install = {
							order = 1,
							type = 'group',
							inline = true,
							name = L["Reinstall the plugin to reset settings"],
							args = {
								pluginagain = {
									order = 1,
									type = 'execute',
									name = L["Install"],
									func = function() E:GetModule('PluginInstaller'):Queue(ElvUI_EltreumUI.InstallerData) E:ToggleOptionsUI() end,
								},
							},
						},
						resetnameplates = {
							order = 2,
							type = 'group',
							inline = true,
							name = L["Reset nameplates to Eltruism settings"],
							args = {
								nameplateagain = {
									order = 1,
									type = 'execute',
									name = 'Install',
									func = function() ElvUI_EltreumUI:SetupNamePlates('ElvUI') ElvUI_EltreumUI:ResolutionOutline() end,
								},
							},
						},
					},
				},
				aurafilters = {
					type = 'group',
					name = L["Aura Filters"],
					icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\aurafilter',
					order = 85,
					args = {
						headerline1 = {
							order = 1,
							type = "description",
							name = "",
							width = 'full',
							image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
						},
						auradesc = {
							order = 2,
							type = 'header',
							name = L["Aura Filters"],
						},
						listofauras = {
							order = 3,
							type = 'input',
							width = 'full',
							name = L["For Shadowlands, import aura filters by copying the code below and going into Profiles > Import Profile."],
							get = function() return ' ' end,
						},
						header24 = {
							order = 4,
							type = "description",
							name = "",
							width = 'full',
							image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
						},
						aurasetupdesc = {
							order = 5,
							type = 'description',
							name = L["Setup Aura Filters to show all"],
						},
						playerallbuffs = {
							order = 6,
							type = 'execute',
							name = L["All Player Buffs"],
							desc = L["Set filters to show more buffs on Player"],
							func = function() ElvUI_EltreumUI:SetupBuffs('player', 'Everything') end,
						},
						playeralldebuffs = {
							order = 6,
							type = 'execute',
							name = L["All Player Debuffs"],
							desc = L["Set filters to show more debuffs on Player"],
							func = function() ElvUI_EltreumUI:SetupDebuffs('player', 'Everything') end,
						},
						targetalldebuffs = {
							order = 6,
							type = 'execute',
							name = L["All Target Debuffs"],
							desc = L["Set filters to show more debuffs on Target"],
							func = function() ElvUI_EltreumUI:SetupDebuffs('target', 'Everything') end,
						},
						targetallbuffs = {
							order = 6,
							type = 'execute',
							name = L["All Target Buffs"],
							desc = L["Set filters to show more buffs on Target"],
							func = function() ElvUI_EltreumUI:SetupBuffs('target', 'Everything') end,
						},
						focusallbuffs = {
							order = 6,
							type = 'execute',
							name = L["All Focus Buffs"],
							desc = L["Set filters to show more buffs on Focus"],
							func = function() ElvUI_EltreumUI:SetupBuffs('focus', 'Everything') end,
						},
						focusalldebuffs = {
							order = 6,
							type = 'execute',
							name = L["All Focus Debuffs"],
							desc = L["Set filters to show more debuffs on Focus"],
							func = function() ElvUI_EltreumUI:SetupDebuffs('focus', 'Everything') end,
						},
						bossallbuffs = {
							order = 6,
							type = 'execute',
							name = L["All Boss Buffs"],
							desc = L["Set filters to show more buffs on Boss"],
							func = function() ElvUI_EltreumUI:SetupBuffs('boss', 'Everything') end,
						},
						bossalldebuffs = {
							order = 6,
							type = 'execute',
							name = L["All Boss Debuffs"],
							desc = L["Set filters to show more debuffs on Bosss"],
							func = function() ElvUI_EltreumUI:SetupDebuffs('boss', 'Everything') end,
						},
						nameplateallbuffs = {
							order = 6,
							type = 'execute',
							name = L["All Nameplate Buffs"],
							desc = L["Set filters to show more buffs on Nameplates"],
							func = function() ElvUI_EltreumUI:SetupBuffs('nameplate', 'Everything') end,
						},
						nameplatealldebuffs = {
							order = 6,
							type = 'execute',
							name = L["All Nameplate Debuffs"],
							desc = L["Set filters to show more debuffs on Nameplates"],
							func = function() ElvUI_EltreumUI:SetupDebuffs('nameplate', 'Everything') end,
						},
						header25 = {
							order = 7,
							type = "description",
							name = "",
							width = 'full',
							image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
						},
						aurasetupdesc2 = {
							order = 8,
							type = 'description',
							name = L["Setup Aura Filters to be Eltruism/ElvUI defaults"],
						},
						playerEltruismbuffs = {
							order = 9,
							type = 'execute',
							name = L["Eltruism Player Buffs"],
							desc = L["Set filters to be Eltruism/ElvUI defaults on Player"],
							func = function() ElvUI_EltreumUI:SetupBuffs('player', 'Eltruism') end,
						},
						playerEltruismdebuffs = {
							order = 9,
							type = 'execute',
							name = L["Eltruism Player Debuffs"],
							desc = L["Set filters to be Eltruism/ElvUI defaults on Player"],
							func = function() ElvUI_EltreumUI:SetupDebuffs('player', 'Eltruism') end,
						},
						targetEltruismdebuffs = {
							order = 9,
							type = 'execute',
							name = L["Eltruism Target Debuffs"],
							desc = L["Set filters to be Eltruism/ElvUI defaults on Target"],
							func = function() ElvUI_EltreumUI:SetupDebuffs('target', 'Eltruism') end,
						},
						targetEltruismbuffs = {
							order = 9,
							type = 'execute',
							name = L["Eltruism Target Buffs"],
							desc = L["Set filters to be Eltruism/ElvUI defaults on Target"],
							func = function() ElvUI_EltreumUI:SetupBuffs('target', 'Eltruism') end,
						},
						focusEltruismbuffs = {
							order = 9,
							type = 'execute',
							name = L["Eltruism Focus Buffs"],
							desc = L["Set filters to be Eltruism/ElvUI defaults on Focus"],
							func = function() ElvUI_EltreumUI:SetupBuffs('focus', 'Eltruism') end,
						},
						focusEltruismdebuffs = {
							order = 9,
							type = 'execute',
							name = L["Eltruism Focus Debuffs"],
							desc = L["Set filters to be Eltruism/ElvUI defaults on Focus"],
							func = function() ElvUI_EltreumUI:SetupDebuffs('focus', 'Eltruism') end,
						},
						bossEltruismbuffs = {
							order = 9,
							type = 'execute',
							name = L["Eltruism Boss Buffs"],
							desc = L["Set filters to be Eltruism/ElvUI defaults on Boss"],
							func = function() ElvUI_EltreumUI:SetupBuffs('boss', 'Eltruism') end,
						},
						bossEltruismdebuffs = {
							order = 9,
							type = 'execute',
							name = L["Eltruism Boss Debuffs"],
							desc = L["Set filters to be Eltruism/ElvUI defaults on Boss"],
							func = function() ElvUI_EltreumUI:SetupDebuffs('boss', 'Eltruism') end,
						},
						nameplateEltruismbuffs = {
							order = 9,
							type = 'execute',
							name = L["Eltruism Nameplate Buffs"],
							desc = L["Set filters to be Eltruism/ElvUI defaults on Nameplates"],
							func = function() ElvUI_EltreumUI:SetupBuffs('nameplate', 'Eltruism') end,
						},
						nameplateEltruismdebuffs = {
							order = 9,
							type = 'execute',
							name = L["Eltruism Nameplate Debuffs"],
							desc = L["Set filters to be Eltruism/ElvUI defaults on Nameplates"],
							func = function() ElvUI_EltreumUI:SetupDebuffs('nameplate', 'Eltruism') end,
						},
					},
				},
				misc ={
					type = 'group',
					name = 'Misc',
					icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\misc',
					order = 85,
					args = {
						header1 = {
							order = 1,
							type = "description",
							name = "Show Buffs in Arena and hide them outside (will overwrite Eltruism default settings)",
							width = 'full',
							image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
						},
						arenabuffs = {
							type = 'toggle',
							name = "Enable",
							order = 2,
							get = function() return E.db.ElvUI_EltreumUI.otherstuff.arenabuffs end,
							set = function(_, value) E.db.ElvUI_EltreumUI.otherstuff.arenabuffs = value E:StaticPopup_Show('CONFIG_RL') end,
						},
						header2 = {
							order = 3,
							type = "description",
							name = "Hide Arena Frames in Arena due to Gladius/Gladdy or another addon",
							width = 'full',
							image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
						},
						arenaUF = {
							type = 'toggle',
							name = "Enable",
							order = 4,
							get = function() return E.db.ElvUI_EltreumUI.otherstuff.arenaunitframes end,
							set = function(_, value) E.db.ElvUI_EltreumUI.otherstuff.arenaunitframes = value E:StaticPopup_Show('CONFIG_RL') end,
						},
						header3 = {
							order = 5,
							type = "description",
							name = "Hide Raid Unitframes in battlegrounds due to addons like Battleground Enemies",
							width = 'full',
							image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
						},
						bgUF = {
							type = 'toggle',
							name = "Enable",
							order = 6,
							get = function() return E.db.ElvUI_EltreumUI.otherstuff.bgunitframes end,
							set = function(_, value) E.db.ElvUI_EltreumUI.otherstuff.bgunitframes = value E:StaticPopup_Show('CONFIG_RL') end,
						},
						header4 = {
							order = 7,
							type = "description",
							name = "",
							width = 'full',
							image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
						},
						rogueorderhallautoopen = {
							order = 8,
							type = "description",
							name = L["Auto open the Rogue Order Hall, to avoid opening hold CTRL or SHIFT or ALT while talking to the NPC"],
							width = "full",
						},
						rogueenable = {
							order = 9,
							type = 'toggle',
							name = L["Enable"],
							desc = L["Enable the Rogue Order Hall Auto Open"],
							get = function(info) return E.db.ElvUI_EltreumUI.questsettings.rogueopen end,
							set = function(info, value) E.db.ElvUI_EltreumUI.questsettings.rogueopen = value end,
						},
						header9 = {
							order = 29,
							type = "description",
							name = "",
							width = 'full',
							image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
						},
						worldtext = {
							order = 30,
							type = "description",
							name = "Change the Scale of the World Text",
							desc = "Such as the floating XP, floating reputation changes and others",
							width = 'full',
						},
						worldtextscale = {
							type = 'range',
							name = "Select the size of the World Text",
							order = 31,
							min = 0.2,
							max = 5,
							step = 0.1,
							width = "full",
							get = function() return E.db.ElvUI_EltreumUI.otherstuff.worldtextscale end,
							set = function(_, value) E.db.ElvUI_EltreumUI.otherstuff.worldtextscale = value ElvUI_EltreumUI:WorldTextScale(value) end,
						},
					},
				},
				profiles = {
					type = 'group',
					name = L["Addons"],
					icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\addon',
					order = 85,
					args = {
						header1 = {
							order = 1,
							type = "description",
							name = "",
							width = 'full',
							image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
						},
						plugins = {
							order = 1,
							type = 'group',
							inline = true,
							name = L["ElvUI Plugins"],
							args = {
								addonskins = {
									order = 1,
									type = 'execute',
									name = '|cff16C3F2AddOn|r|cFFFFFFFFSkins|r',
									desc = L["Reset to Eltruism defaults."],
									func = function() ElvUI_EltreumUI:AddonSetupAS() E:StaticPopup_Show('CONFIG_RL') end,
								},
								projectazilroka = {
									order = 2,
									type = 'execute',
									name = '|cFF16C3F2Project|r|cFFFFFFFFAzilroka|r',
									desc = L["Reset to Eltruism defaults."],
									func = function() ElvUI_EltreumUI:AddonSetupPA() E:StaticPopup_Show('CONFIG_RL') end,
								},
							},
						},
						header2 = {
							order = 2,
							type = "description",
							name = "",
							width = 'full',
							image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
						},
						bossmods = {
							order = 2,
							type = 'group',
							inline = true,
							name = L["BossMods Profiles"],
							args = {
								bigwigs = {
									order = 1,
									type = 'execute',
									name = 'BigWigs',
									desc = L["Reset to Eltruism defaults."],
									func = function() ElvUI_EltreumUI:AddonSetupBW() E:StaticPopup_Show('CONFIG_RL') end,
								},
								dbm = {
									order = 2,
									type = 'execute',
									name = 'DBM',
									desc = L["Reset to Eltruism defaults."],
									func = function() ElvUI_EltreumUI:AddonSetupDBM() E:StaticPopup_Show('CONFIG_RL') end,
								},
							},
						},
						header3 = {
							order = 4,
							type = "description",
							name = "",
							width = 'full',
							image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
						},
						addons = {
							order = 4,
							type = 'group',
							inline = true,
							name = L["Addon Profiles"],
							args = {
								dynamiccam = {
									order = 1,
									type = 'execute',
									name = 'Dynamic Cam',
									desc = L["Reset to Eltruism defaults."],
									func = function() ElvUI_EltreumUI:AddonSetupDynamicCam() E:StaticPopup_Show('CONFIG_RL') end,
								},
								immersion = {
									order = 2,
									type = 'execute',
									name = 'Immersion',
									desc = L["Reset to Eltruism defaults."],
									func = function() ElvUI_EltreumUI:AddonSetupImmersion() E:StaticPopup_Show('CONFIG_RL') end,
								},
								gladiusex = {
									order = 3,
									type = 'execute',
									name = 'Gladius Ex',
									desc = L["Reset to Eltruism defaults."],
									func = function() ElvUI_EltreumUI:AddonSetupGladiusEx() E:StaticPopup_Show('CONFIG_RL') end,
								},
								exorsus = {
									order = 4,
									type = 'execute',
									name = 'Exorsus Raid Tools',
									desc = L["Reset to Eltruism defaults."],
									func = function() ElvUI_EltreumUI:AddonSetupExRT() E:StaticPopup_Show('CONFIG_RL') end,
								},
								nameplatesct = {
									order = 5,
									type = 'execute',
									name = 'NameplateSCT',
									desc = L["Reset to Eltruism defaults."],
									func = function() ElvUI_EltreumUI:AddonSetupNameplateSCT() E:StaticPopup_Show('CONFIG_RL') end,
								},
								fct = {
									order = 6,
									type = 'execute',
									name = 'Floating Combat Text',
									desc = L["Reset to Eltruism defaults."],
									func = function() ElvUI_EltreumUI:AddonSetupFCT() E:StaticPopup_Show('CONFIG_RL') end,
								},
								details = {
									order = 7,
									type = 'execute',
									name = 'Details',
									desc = L["Reset to Eltruism defaults."],
									func = function() ElvUI_EltreumUI:AddonSetupDT() E:StaticPopup_Show('CONFIG_RL') end,
								},
							},
						},
					},
				},
				actionbars = {
					type = 'group',
					name = L["Custom Glow"],
					icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\customglow',
					order = 85,
					args = {
						glow = {
							type = 'group',
							name = L["Replace Blizzards Default Glow with a Custom Glow"],
							guiInline = true,
							order = 1,
							args = {
								enable = {
									type = 'toggle',
									name = L["Enable"],
									order = 1,
									get = function() return E.db.ElvUI_EltreumUI.glow.enable end,
									set = function(_, value) E.db.ElvUI_EltreumUI.glow.enable = value end,
								},
								headerline1 = {
									order = 2,
									type = "description",
									name = "",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								procselection = {
									order = 2,
									type = 'group',
									name = L["Select a Type"],
										args = {
											autocast = {
												type = 'toggle',
												name = L["Autocast"],
												order = 10,
												desc = 'Adds an autocast style glow using class color',
												disabled = function() return not E.db.ElvUI_EltreumUI.glow.enable or E.db.ElvUI_EltreumUI.glow.pixel or E.db.ElvUI_EltreumUI.glow.blizzard end,
												get = function(info) return E.db.ElvUI_EltreumUI.glow.autocast end,
												set = function(info, value) E.db.ElvUI_EltreumUI.glow.autocast = value E:StaticPopup_Show('CONFIG_RL') end,
											},
											pixel = {
												type = 'toggle',
												name = L["Pixel"],
												order = 10,
												desc = 'Adds a pixel style glow using class color',
												disabled = function() return not E.db.ElvUI_EltreumUI.glow.enable or E.db.ElvUI_EltreumUI.glow.autocast or E.db.ElvUI_EltreumUI.glow.blizzard end,
												get = function(info) return E.db.ElvUI_EltreumUI.glow.pixel end,
												set = function(info, value) E.db.ElvUI_EltreumUI.glow.pixel = value E:StaticPopup_Show('CONFIG_RL') end,
											},
											blizzard = {
												type = 'toggle',
												name = 'Blizzard',
												order = 10,
												desc = L["Adds a Blizzard style glow using class color"],
												disabled = function() return not E.db.ElvUI_EltreumUI.glow.enable or E.db.ElvUI_EltreumUI.glow.autocast or E.db.ElvUI_EltreumUI.glow.pixel end,
												get = function(info) return E.db.ElvUI_EltreumUI.glow.blizzard end,
												set = function(info, value) E.db.ElvUI_EltreumUI.glow.blizzard = value E:StaticPopup_Show('CONFIG_RL') end,
											},
										},
								},
								headerline2 = {
									order = 3,
									type = "description",
									name = "",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								customoptionsglow = {
									order = 5,
									type = 'group',
									name = L["Glow Colors"],
									args = {
										classcolor = {
											type = 'toggle',
											name = L["Use Class Colors"],
											order = 3,
											desc = L["Toggle Class Colored glows"],
											get = function() return E.db.ElvUI_EltreumUI.glow.colorclass end,
											set = function(_, value) E.db.ElvUI_EltreumUI.glow.colorclass = value E:StaticPopup_Show('CONFIG_RL') end,
										},
										color = {
											order = 4,
											type = 'color',
											name = L["Custom Color"],
											hasAlpha = false,
											disabled = function() return E.db.ElvUI_EltreumUI.glow.colorclass end,
											get = function()
												local glowcustomcolor = E.db.ElvUI_EltreumUI.glowcustomcolor
												local d = P.ElvUI_EltreumUI.glowcustomcolor
												return glowcustomcolor.r, glowcustomcolor.g, glowcustomcolor.b, glowcustomcolor.a, d.r, d.g, d.b, d.a
											end,
											set = function(_, r, g, b, a)
												local glowcustomcolor = E.db.ElvUI_EltreumUI.glowcustomcolor
												glowcustomcolor.r, glowcustomcolor.g, glowcustomcolor.b = r, g, b E:StaticPopup_Show('CONFIG_RL')
											end,
										},
										headerline24 = {
											order = 5,
											type = "description",
											name = L["Pixel Glow"],
											width = 'full',
											image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
										},
										addagapherepixel = {
											order = 6,
											type = "description",
											name = "",
										},
										borderpixel = {
											type = 'toggle',
											name = L["Pixel Border"],
											desc = L["Enable a border for the Pixel Glow"],
											order = 7,
											width = "full",
											get = function() return E.db.ElvUI_EltreumUI.glow.borderpixel end,
											set = function(_, value) E.db.ElvUI_EltreumUI.glow.borderpixel = value end,
										},
										numberpixel = {
											type = 'range',
											name = L["Number of Pixels (Default is 9)"],
											desc = L["Set the number of pixels in pixel glow"],
											order = 7,
											min = 1,
											max = 10,
											step = 1,
											width = "full",
											get = function() return E.db.ElvUI_EltreumUI.glow.numberpixel end,
											set = function(_, value) E.db.ElvUI_EltreumUI.glow.numberpixel = value end,
										},
										frequencypixel = {
											type = 'range',
											name = L["Pixel Frequency (Default is 1)"],
											desc = L["Set the frequency pixel glow"],
											order = 7,
											min = 1,
											max = 10,
											step = 1,
											width = "full",
											get = function() return E.db.ElvUI_EltreumUI.glow.frequencypixel end,
											set = function(_, value) E.db.ElvUI_EltreumUI.glow.frequencypixel = value end,
										},
										lengthpixel = {
											type = 'range',
											name = L["Pixel Length (Default is 3)"],
											desc = L["Set the length of pixels"],
											order = 7,
											min = 1,
											max = 10,
											step = 1,
											width = "full",
											get = function() return E.db.ElvUI_EltreumUI.glow.lengthpixel end,
											set = function(_, value) E.db.ElvUI_EltreumUI.glow.lengthpixel = value end,
										},
										thicknesspixel = {
											type = 'range',
											name = L["Pixel Thickness (Default is 5)"],
											desc = L["Set the thickness of pixels"],
											order = 7,
											min = 1,
											max = 10,
											step = 1,
											width = "full",
											get = function() return E.db.ElvUI_EltreumUI.glow.thicknesspixel end,
											set = function(_, value) E.db.ElvUI_EltreumUI.glow.thicknesspixel = value end,
										},
										pixelxOffset = {
											type = 'range',
											name = L["Pixel Horizontal Offset (Default is 5)"],
											desc = L["Set the horizontal offset of pixels"],
											order = 8,
											min = 1,
											max = 10,
											step = 1,
											width = "full",
											get = function() return E.db.ElvUI_EltreumUI.glow.pixelxOffset end,
											set = function(_, value) E.db.ElvUI_EltreumUI.glow.pixelxOffset = value end,
										},
										pixelyOffset = {
											type = 'range',
											name = L["Pixel Vertical Offset (Default is 5)"],
											desc = L["Set the vertical offset of pixels"],
											order = 8,
											min = 1,
											max = 10,
											step = 1,
											width = "full",
											get = function() return E.db.ElvUI_EltreumUI.glow.pixelyOffset end,
											set = function(_, value) E.db.ElvUI_EltreumUI.glow.pixelyOffset = value end,
										},
										headerline32 = {
											order = 9,
											type = "description",
											name = L["Autocast Glow"],
											width = 'full',
											image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
										},
										numberauto = {
											type = 'range',
											name = L["Autocast Particle Groups (Default is 8)"],
											desc = L["'Set the number of groups for autocast, for each group you get 4 particles"],
											order = 10,
											min = 1,
											max = 10,
											step = 1,
											width = "full",
											get = function() return E.db.ElvUI_EltreumUI.glow.numberauto end,
											set = function(_, value) E.db.ElvUI_EltreumUI.glow.numberauto = value end,
										},
										frequencyauto = {
											type = 'range',
											name = L["Autocast Frequency (Default is 0.8)"],
											desc = L["Speed for Autocast, set to negative to inverse direction of rotation"],
											order = 10,
											min = -3,
											max = 3,
											step = 0.1,
											width = "full",
											get = function() return E.db.ElvUI_EltreumUI.glow.frequencyauto end,
											set = function(_, value) E.db.ElvUI_EltreumUI.glow.frequencyauto = value end,
										},
										autoscale = {
											type = 'range',
											name = L["Autocast Scale (Default is 2)"],
											desc = L["Change the size of Autocast"],
											order = 10,
											min = -3,
											max = 3,
											step = 0.1,
											width = "full",
											get = function() return E.db.ElvUI_EltreumUI.glow.autoscale end,
											set = function(_, value) E.db.ElvUI_EltreumUI.glow.autoscale = value end,
										},
										autoxOffset = {
											type = 'range',
											name = L["Autocast Horizontal Offset (Default is 5)"],
											desc = L["Set the horizontal offset of autocast"],
											order = 11,
											min = 1,
											max = 10,
											step = 1,
											width = "full",
											get = function() return E.db.ElvUI_EltreumUI.glow.autoxOffset end,
											set = function(_, value) E.db.ElvUI_EltreumUI.glow.autoxOffset = value end,
										},
										autoyOffset = {
											type = 'range',
											name = L["Autocast Vertical Offset (Default is 5)"],
											desc = L["Set the vertical offset of autocast"],
											order = 11,
											min = 1,
											max = 10,
											step = 1,
											width = "full",
											get = function() return E.db.ElvUI_EltreumUI.glow.autoyOffset end,
											set = function(_, value) E.db.ElvUI_EltreumUI.glow.autoyOffset = value end,
										},
										headerline39 = {
											order = 12,
											type = "description",
											name = L["Blizzard Glow"],
											width = 'full',
											image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
										},
										frequencyblizz = {
											type = 'range',
											name = L["Blizzard Frequency (Default is 0.5)"],
											desc = L["Speed for Blizzard glow"],
											order = 13,
											min = 0.1,
											max = 3,
											step = 0.1,
											width = "full",
											get = function() return E.db.ElvUI_EltreumUI.glow.frequencyblizz end,
											set = function(_, value) E.db.ElvUI_EltreumUI.glow.frequencyblizz = value end,
										},
									},
								},
							},
						},
					},
				},
				borders = {
					type = 'group',
					name = "Borders (Beta)",
					icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\border',
					order = 85,
					args = {
						headerline1 = {
							order = 1,
							type = "description",
							name = "Add Borders to Action Bars (All settings require a reload)",
							width = 'full',
							--image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
						},
						enable = {
							type = 'toggle',
							name = L["Enable"],
							width = "full",
							order = 2,
							get = function() return E.db.ElvUI_EltreumUI.borders.borders end,
							set = function(_, value) E.db.ElvUI_EltreumUI.borders.borders = value E:StaticPopup_Show('CONFIG_RL') end,
						},
						headerline2 = {
							order = 3,
							type = "description",
							name = "Choose the Border Texture to be used:",
							width = 'full',
							image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
						},
						sharedmediatexture = {
							order = 4,
							type = 'select',
							width = "full",
							dialogControl = 'LSM30_Border',
							name = "",
							desc = L["Select a Texture"],
							values = AceGUIWidgetLSMlists.border,
							get = function() return E.db.ElvUI_EltreumUI.borders.texture end,
							disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
							set = function(self,key) E.db.ElvUI_EltreumUI.borders.texture = key end,
						},
						headerline3 = {
							order = 5,
							type = "description",
							name = "Change the size of the borders:",
							width = 'full',
							image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
						},
						bordersizes = {
							order = 9,
							type = 'group',
							inline = true,
							name = "",
							args = {
								borderABsize = {
									type = 'range',
									name = "ActionBar Thickness",
									order = 1,
									min = 1,
									max = 200,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.baredgesize end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.baredgesize = value end,
								},
								borderUFsize = {
									type = 'range',
									name = "Unitframe Thickness",
									order = 4,
									min = 1,
									max = 200,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.playertargetsize end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.playertargetsize = value end,
								},
								gap1 = {
									order = 5,
									type = "description",
									name = "Action Bar 1",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								bar1enable = {
									type = 'toggle',
									name = L["Enable"],
									order = 6,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.bar1borders end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.bar1borders = value end,
								},
								bar1xsize = {
									type = 'range',
									name = "Bar 1 X offset",
									order = 7,
									min = 1,
									max = 200,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.bar1xborder end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.bar1xborder = value end,
								},
								bar1ysize = {
									type = 'range',
									name = "Bar 1 Y offset",
									order = 7,
									min = 1,
									max = 200,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.bar1yborder end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.bar1yborder = value end,
								},
								gap2 = {
									order = 8,
									type = "description",
									name = "Action Bar 2",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								bar2enable = {
									type = 'toggle',
									name = L["Enable"],
									order = 9,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.bar2borders end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.bar2borders = value end,
								},
								bar2xsize = {
									type = 'range',
									name = "Bar 2 X offset",
									order = 10,
									min = 1,
									max = 200,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.bar2xborder end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.bar2xborder = value end,
								},
								bar2ysize = {
									type = 'range',
									name = "Bar 2 Y offset",
									order = 10,
									min = 1,
									max = 200,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.bar2yborder end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.bar2yborder = value end,
								},
								gap3 = {
									order = 11,
									type = "description",
									name = "Action Bar 3",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								bar3enable = {
									type = 'toggle',
									name = L["Enable"],
									order = 12,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.bar3borders end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.bar3borders = value end,
								},
								bar3xsize = {
									type = 'range',
									name = "Bar 3 X offset",
									order = 13,
									min = 1,
									max = 200,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.bar3xborder end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.bar3xborder = value end,
								},
								bar3ysize = {
									type = 'range',
									name = "Bar 3 Y offset",
									order = 13,
									min = 1,
									max = 200,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.bar3yborder end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.bar3yborder = value end,
								},
								gap4 = {
									order = 14,
									type = "description",
									name = "Action Bar 4",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								bar4enable = {
									type = 'toggle',
									name = L["Enable"],
									order = 15,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.bar4borders end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.bar4borders = value end,
								},
								bar4xsize = {
									type = 'range',
									name = "Bar 4 X offset",
									order = 16,
									min = 1,
									max = 200,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.bar4xborder end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.bar4xborder = value end,
								},
								bar4ysize = {
									type = 'range',
									name = "Bar 4 Y offset",
									order = 16,
									min = 1,
									max = 200,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.bar4yborder end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.bar4yborder = value end,
								},
								gap5 = {
									order = 17,
									type = "description",
									name = "Action Bar 5",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								bar5enable = {
									type = 'toggle',
									name = L["Enable"],
									order = 18,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.bar5borders end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.bar5borders = value end,
								},
								bar5xsize = {
									type = 'range',
									name = "Bar 5 X offset",
									order = 19,
									min = 1,
									max = 200,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.bar5xborder end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.bar5xborder = value end,
								},
								bar5ysize = {
									type = 'range',
									name = "Bar 5 Y offset",
									order = 19,
									min = 1,
									max = 200,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.bar5yborder end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.bar5yborder = value end,
								},
								gap6 = {
									order = 20,
									type = "description",
									name = "Action Bar 6",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								bar6enable = {
									type = 'toggle',
									name = L["Enable"],
									order = 21,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.bar6borders end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.bar6borders = value end,
								},
								bar6xsize = {
									type = 'range',
									name = "Bar 6 X offset",
									order = 22,
									min = 1,
									max = 200,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.bar6xborder end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.bar6xborder = value end,
								},
								bar6ysize = {
									type = 'range',
									name = "Bar 6 Y offset",
									order = 22,
									min = 1,
									max = 200,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.bar6yborder end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.bar6yborder = value end,
								},
								gaptarget = {
									order = 23,
									type = "description",
									name = "Target Border",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								bartarget = {
									type = 'toggle',
									name = L["Enable"],
									order = 24,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.targetborder end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.targetborder = value end,
								},
								borderxtarget = {
									type = 'range',
									name = "Border X offet",
									order = 25,
									min = 1,
									max = 800,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.xtarget end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.xtarget = value end,
								},
								borderytarget = {
									type = 'range',
									name = "Border Y offset",
									order = 25,
									min = 1,
									max = 800,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.ytarget end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.ytarget = value end,
								},
								gapplayer = {
									order = 26,
									type = "description",
									name = "Player Border",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								barplayer = {
									type = 'toggle',
									name = L["Enable"],
									order = 27,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.playerborder end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.playerborder = value end,
								},
								borderxplayer = {
									type = 'range',
									name = "Border X offset",
									order = 28,
									min = 1,
									max = 800,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.xplayer end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.xplayer = value end,
								},
								borderyplayer = {
									type = 'range',
									name = "Border Y offset",
									order = 28,
									min = 1,
									max = 800,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.yplayer end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.yplayer = value end,
								},
								gapplayercast = {
									order = 29,
									type = "description",
									name = "Player Castbar Border",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								barcastplayer = {
									type = 'toggle',
									name = L["Enable"],
									order = 30,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.playercastborder end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.playercastborder = value end,
								},
								borderxcastplayer = {
									type = 'range',
									name = "Border X offset",
									order = 31,
									min = 1,
									max = 800,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.xplayercast end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.xplayercast = value end,
								},
								borderycastplayer = {
									type = 'range',
									name = "Border Y offset",
									order = 31,
									min = 1,
									max = 800,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.yplayercast end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.yplayercast = value end,
								},
								gaptargetcast = {
									order = 32,
									type = "description",
									name = "Target Castbar Border",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								bartargetcast = {
									type = 'toggle',
									name = L["Enable"],
									order = 33,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.targetcastborder end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.targetcastborder = value end,
								},
								borderxcasttarget = {
									type = 'range',
									name = "Border X offset",
									order = 34,
									min = 1,
									max = 800,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.xcasttarget end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.xcasttarget = value end,
								},
								borderycasttarget = {
									type = 'range',
									name = "Border Y offset",
									order = 34,
									min = 1,
									max = 800,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.borders.borders end,
									get = function() return E.db.ElvUI_EltreumUI.borders.ycasttarget end,
									set = function(_, value) E.db.ElvUI_EltreumUI.borders.ycasttarget = value end,
								},
							},
						},
					},
				},
				cvars = {
					order = 85,
					type = 'group',
					name = L["CVars"],
					icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\cvar',
					args = {
						setup = {
							order = 1,
							type = 'group',
							inline = true,
							name = L["Setup CVars"],
							args = {
								generalVars = {
									order = 1,
									type = 'execute',
									name = L["General CVars"],
									func = function() ElvUI_EltreumUI:SetupCVars() ElvUI_EltreumUI:NameplateCVars() end,
									confirm = true,
								},
							},
						},
						generalDesc = {
							order = 2,
							type = 'group',
							inline = true,
							name = L["It will set these CVars:"],
							args = {
								cvars = {
									order = 1,
									type = 'description',
									fontSize = 'medium',
									name = '- autoLootDefault 1\n- ShowClassColorInFriendlyNameplate 1\n- removeChatDelay 1\n- autoQuestWatch 1\n- cameraDistanceMaxZoomFactor 2.6\n- nameplateLargerScale 1.2\n- nameplateMaxDistance 60\n- nameplateMinAlpha 1\n- nameplateMinScale 1\n- nameplateMotion 1\n- nameplateOccludedAlphaMult 0\n- nameplateOverlapH 0.8\n- nameplateOverlapV 1.1\n- nameplateSelectedScale 1\n- nameplateSelfAlpha 1\n- nameplateShowFriendlyMinions 0\n- nameplateOtherBottomInset 0.02\n- nameplateOtherTopInset 0.1\n- nameplateTargetRadialPosition 1\n- nameplateTargetBehindMaxDistance 40\n- UnitNameEnemyGuardianName 0\n- UnitNameEnemyMinionName 0\n- UnitNameEnemyPetName 0\n- UnitNameEnemyPlayerName 1\n- UnitNameEnemyTotemName 1\n- UnitNameNPC 1',
								},
							},
						},
					},
				},
				partyraidsettings = {
					type = 'group',
					name = L["Party/Raid"],
					icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\party',
					order = 85,
					args = {
						partyraiddeath = {
							type = 'group',
							name = L["Play a sound when someone dies in Party or Raid"],
							guiInline = true,
							order = 10,
							args = {
								enable = {
								type = 'toggle',
								name = L["Enable"],
								order = 1,
								get = function() return E.db.ElvUI_EltreumUI.partyraiddeath.enable end,
								set = function(_, value) E.db.ElvUI_EltreumUI.partyraiddeath.enable = value end,
								},
								addagaphere = {
								order = 2,
								type = "description",
								name = "",
								},
								addanothergapforfun = {
								order = 2,
								type = "description",
								name = "",
								},
								soundselection = {
								order = 2,
								type = 'group',
								name = L["Select a Sound"],
									args = {
										yetanothergap = {
										order = 2,
										type = "description",
										name = "",
										},
										bruh = {
											type = 'toggle',
											name = 'Bruh',
											order = 5,
											disabled = function() return not E.db.ElvUI_EltreumUI.partyraiddeath.enable or E.db.ElvUI_EltreumUI.partyraiddeath.robloxoof or E.db.ElvUI_EltreumUI.partyraiddeath.shame or E.db.ElvUI_EltreumUI.partyraiddeath.wow or E.db.ElvUI_EltreumUI.partyraiddeath.mario or E.db.ElvUI_EltreumUI.partyraiddeath.ion end,
											get = function(info) return E.db.ElvUI_EltreumUI.partyraiddeath.bruh end,
											set = function(info, value) E.db.ElvUI_EltreumUI.partyraiddeath.bruh = value PlaySoundFile("Interface\\AddOns\\ElvUI_EltreumUI\\Media\\sound\\bruh.mp3", "Dialog") end,
										},
										robloxoof = {
											type = 'toggle',
											name = 'Oof',
											order = 6,
											disabled = function() return not E.db.ElvUI_EltreumUI.partyraiddeath.enable or E.db.ElvUI_EltreumUI.partyraiddeath.bruh or E.db.ElvUI_EltreumUI.partyraiddeath.shame or E.db.ElvUI_EltreumUI.partyraiddeath.wow or E.db.ElvUI_EltreumUI.partyraiddeath.mario or E.db.ElvUI_EltreumUI.partyraiddeath.ion end,
											get = function(info) return E.db.ElvUI_EltreumUI.partyraiddeath.robloxoof end,
											set = function(info, value) E.db.ElvUI_EltreumUI.partyraiddeath.robloxoof = value PlaySoundFile("Interface\\AddOns\\ElvUI_EltreumUI\\Media\\sound\\oof.mp3", "Dialog") end,
										},
										shame = {
											type = 'toggle',
											name = 'Shame',
											order = 13,
											disabled = function() return not E.db.ElvUI_EltreumUI.partyraiddeath.enable or E.db.ElvUI_EltreumUI.partyraiddeath.bruh or E.db.ElvUI_EltreumUI.partyraiddeath.robloxoof or E.db.ElvUI_EltreumUI.partyraiddeath.wow or E.db.ElvUI_EltreumUI.partyraiddeath.mario or E.db.ElvUI_EltreumUI.partyraiddeath.ion end,
											get = function(info) return E.db.ElvUI_EltreumUI.partyraiddeath.shame end,
											set = function(info, value) E.db.ElvUI_EltreumUI.partyraiddeath.shame = value PlaySoundFile("Interface\\AddOns\\ElvUI_EltreumUI\\Media\\sound\\shame.mp3", "Dialog") end,
										},
										wowsound = {
											type = 'toggle',
											name = 'Wow',
											order = 14,
											disabled = function() return not E.db.ElvUI_EltreumUI.partyraiddeath.enable or E.db.ElvUI_EltreumUI.partyraiddeath.bruh or E.db.ElvUI_EltreumUI.partyraiddeath.robloxoof or E.db.ElvUI_EltreumUI.partyraiddeath.shame or E.db.ElvUI_EltreumUI.partyraiddeath.mario or E.db.ElvUI_EltreumUI.partyraiddeath.ion end,
											get = function(info) return E.db.ElvUI_EltreumUI.partyraiddeath.wow end,
											set = function(info, value) E.db.ElvUI_EltreumUI.partyraiddeath.wow = value PlaySoundFile("Interface\\AddOns\\ElvUI_EltreumUI\\Media\\sound\\wow.mp3", "Dialog") end,
										},
										mariosound = {
											type = 'toggle',
											name = 'Mario',
											order = 14,
											disabled = function() return not E.db.ElvUI_EltreumUI.partyraiddeath.enable or E.db.ElvUI_EltreumUI.partyraiddeath.bruh or E.db.ElvUI_EltreumUI.partyraiddeath.robloxoof or E.db.ElvUI_EltreumUI.partyraiddeath.shame or E.db.ElvUI_EltreumUI.partyraiddeath.wow or E.db.ElvUI_EltreumUI.partyraiddeath.ion end,
											get = function(info) return E.db.ElvUI_EltreumUI.partyraiddeath.mario end,
											set = function(info, value) E.db.ElvUI_EltreumUI.partyraiddeath.mario = value PlaySoundFile("Interface\\AddOns\\ElvUI_EltreumUI\\Media\\sound\\mariodeath.mp3", "Dialog") end,
										},
										ionsound = {
											type = 'toggle',
											name = 'Ion',
											order = 14,
											disabled = function() return not E.db.ElvUI_EltreumUI.partyraiddeath.enable or E.db.ElvUI_EltreumUI.partyraiddeath.bruh or E.db.ElvUI_EltreumUI.partyraiddeath.robloxoof or E.db.ElvUI_EltreumUI.partyraiddeath.shame or E.db.ElvUI_EltreumUI.partyraiddeath.wow or E.db.ElvUI_EltreumUI.partyraiddeath.mario end,
											get = function(info) return E.db.ElvUI_EltreumUI.partyraiddeath.ion end,
											set = function(info, value) E.db.ElvUI_EltreumUI.partyraiddeath.ion = value PlaySoundFile("Interface\\AddOns\\ElvUI_EltreumUI\\Media\\sound\\ionskillissue.mp3", "Dialog") end,
										},
									},
								},
							},
						},
						headergaphere = {
							order = 11,
							type = "description",
							name = "",
							width = 'full',
							image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
						},
						grouplayout = {
							type = 'group',
							name = L["Alternative unitframe layouts"],
							guiInline = true,
							order = 12,
							args = {
								layoutdescription = {
										order = 1,
										type = 'description',
										fontSize = 'medium',
										name = L["DPS/Tank layouts were created with pure dps classes in mind, if you play a class with more raid cooldowns like a Shaman, Druid or Paladin you might want to use the alternative layout in order to make it easier for you to use your cooldowns on the members of your group"],
								},
								alternativegroups = {
									order = 2,
									type = 'execute',
									name = L["Alternative Layout"],
									func = function() ElvUI_EltreumUI:AlternativeGroupsDPS() E:StaticPopup_Show('CONFIG_RL') end,
								},
								originalgroups = {
									order = 3,
									type = 'execute',
									name = L["Original Layout"],
									func = function() ElvUI_EltreumUI:OriginalGroupsDPS() E:StaticPopup_Show('CONFIG_RL') end,
								},
							},
						},
					},
				},
				quests = {
					type = 'group',
					name = L["Quests"],
					icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\quest',
					order = 85,
					args = {
						questsettings = {
							order = 1,
							type = 'group',
							inline = true,
							name = L["Collapse Quests during Encounters/Boss Fights"],
							get = function(info) return E.db.ElvUI_EltreumUI.questsettings.enable end,
							set = function(info, value) E.db.ElvUI_EltreumUI.questsettings.enable = value end,
							args = {
								enable = {
									order = 5,
									type = 'toggle',
									name = L["Enable"],
									desc = L["Collapse Quests when the boss fight starts"],
								},
							},
						},
						arenaquestsettings = {
							order = 2,
							type = 'group',
							inline = true,
							name = "Hide Quests during Battlegrounds and Arenas",
							get = function(info) return E.db.ElvUI_EltreumUI.questsettings.arena end,
							set = function(info, value) E.db.ElvUI_EltreumUI.questsettings.arena = value end,
							args = {
								enable = {
									order = 5,
									type = 'toggle',
									name = L["Enable"],
									desc = "Hide Quests during Battlegrounds and Arenas",
								},
							},
						},
					},
				},
				cursor = {
					type = 'group',
					name = L["Cursor"],
					icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\cursor',
					order = 85,
					args = {
						cursorsize = {
							order = 1,
							type = 'group',
							inline = true,
							name= L["Change the size of the World of Warcraft Cursor"],
							width = 'full',
							args = {
								setsize = {
									order = 7,
									type = 'select',
									name = L["Select a size"],
									desc = L["Choose this size"],
									values = {
										['-1'] = L["Autodetect"],
										['0'] = '32x32',
										['1'] = '48x48',
										['2'] = '64x64',
										['3'] = '128x128',
									},
									style = 'radio',
									get = function(info) return E.db.ElvUI_EltreumUI.cursor.size end,
  									set = function(info,value) ElvUI_EltreumUI:CursorSize(value) end,
								},
							},
						},
						header1 = {
							order = 2,
							type = "description",
							name = "",
							width = 'full',
							image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
						},
						cursorsettings = {
							order = 3,
							type = 'group',
							inline = true,
							name = L["Add a gcd and cast ring to the cursor"],
							args = {
								enable = {
									order = 1,
									type = 'toggle',
									name = L["Enable cursor rings for Casts, GCD and Combat"],
									desc = L["Add a rings around the mouse cursor for GCD, casts and combat"],
									width = 'full',
									confirm = true,
									get = function(info) return E.db.ElvUI_EltreumUI.cursor.enable end,
									set = function(info, value) E.db.ElvUI_EltreumUI.cursor.enable = value end,
								},
								header1 = {
									order = 2,
									type = "description",
									name = "",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								ringtexture = {
									order = 7,
									type = 'group',
									inline = true,
									name = L["Choose a type of cursor by clicking it"],
									width = 'full',
									args = {
										currentring = {
											order = 0,
											type = 'description',
											name = function() return L["Currently selected cursor: "]..ElvUI_EltreumUI:CurrentTypeofCursor() end,
											desc = ''
										},
										showring1 = {
											order = 1,
											type = "execute",
											image = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\Cursor\\ring1',
											name = L["Type 1"],
											desc = L["The Cursor will use this type as its texture"],
											func = function() E.db.ElvUI_EltreumUI.cursor.ring = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\Cursor\\ring1.tga' E:StaticPopup_Show('CONFIG_RL') end,
										},
										showring2 = {
											order = 2,
											type = "execute",
											image = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\Cursor\\ring2',
											name = L["Type 2"],
											desc = 'The Cursor will use this type as its texture',
											confirm = true,
											func = function() E.db.ElvUI_EltreumUI.cursor.ring = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\Cursor\\ring2.tga' E:StaticPopup_Show('CONFIG_RL') end,
										},
										showring3 = {
											order = 3,
											type = "execute",
											image = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\Cursor\\ring3',
											name = L["Type 3"],
											desc = L["The Cursor will use this type as its texture"],
											confirm = true,
											func = function() E.db.ElvUI_EltreumUI.cursor.ring = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\Cursor\\ring3.tga' E:StaticPopup_Show('CONFIG_RL') end,
										},
										showring4 = {
											order = 4,
											type = "execute",
											image = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\Cursor\\ring4',
											name = L["Type 4"],
											desc = L["The Cursor will use this type as its texture"],
											confirm = true,
											func = function() E.db.ElvUI_EltreumUI.cursor.ring = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\Cursor\\ring4.tga' E:StaticPopup_Show('CONFIG_RL') end,
										},
										showring5 = {
											order = 5,
											type = "execute",
											image = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\Cursor\\ring5',
											name = L["Type 5"],
											desc = L["The Cursor will use this type as its texture"],
											confirm = true,
											func = function() E.db.ElvUI_EltreumUI.cursor.ring = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\Cursor\\ring5.tga' E:StaticPopup_Show('CONFIG_RL') end,
										},
										showring6 = {
											order = 6,
											type = "execute",
											image = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\Cursor\\ring6',
											name = L["Type 6"],
											desc = L["The Cursor will use this type as its texture"],
											confirm = true,
											func = function() E.db.ElvUI_EltreumUI.cursor.ring = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\Cursor\\ring6.tga' E:StaticPopup_Show('CONFIG_RL') end,
										},
										showring7 = {
											order = 7,
											type = "execute",
											image = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\Cursor\\ring7',
											name = L["Type 7"],
											desc = L["The Cursor will use this type as its texture"],
											confirm = true,
											func = function() E.db.ElvUI_EltreumUI.cursor.ring = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\Cursor\\ring7.tga' E:StaticPopup_Show('CONFIG_RL') end,
										},
										showring8 = {
											order = 8,
											type = "execute",
											image = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\Cursor\\ring8',
											name = L["Type 8"],
											desc = L["The Cursor will use this type as its texture"],
											confirm = true,
											func = function() E.db.ElvUI_EltreumUI.cursor.ring = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\Cursor\\ring8.tga' E:StaticPopup_Show('CONFIG_RL') end,
										},
										showring9 = {
											order = 9,
											type = "execute",
											image = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\Cursor\\ring9',
											name = L["Type 9"],
											desc = L["The Cursor will use this type as its texture"],
											confirm = true,
											func = function() E.db.ElvUI_EltreumUI.cursor.ring = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\Cursor\\ring9.tga' E:StaticPopup_Show('CONFIG_RL') end,
										},
										showring10 = {
											order = 10,
											type = "execute",
											image = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\Cursor\\ring10',
											name = L["Type 10"],
											desc = L["The Cursor will use this type as its texture"],
											confirm = true,
											func = function() E.db.ElvUI_EltreumUI.cursor.ring = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\Cursor\\ring10.tga' E:StaticPopup_Show('CONFIG_RL') end,
										},
										nicegap17 = {
											order = 11,
											type = "description",
											name = L["Cursor Colors "]..'|cffff0000('..L["Requires a Reload"]..")|r",
											width = 'full',
										},
										header12 = {
											order = 11,
											type = "description",
											name = "",
											width = 'full',
											image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
										},
										castclasscolor = {
											type = 'toggle',
											name = L["Class Colored Casts"],
											order = 12,
											desc = L["Use Class Colors for Cast"],
											get = function() return E.db.ElvUI_EltreumUI.cursorcast.classcolor end,
											set = function(_, value) E.db.ElvUI_EltreumUI.cursorcast.classcolor = value E:StaticPopup_Show('CONFIG_RL') end,
										},
										colorcast = {
											order = 13,
											type = 'color',
											name = L["Custom Color Cast"],
											hasAlpha = false,
											disabled = function() return E.db.ElvUI_EltreumUI.cursorcast.classcolor end,
											get = function()
												local cursorcast = E.db.ElvUI_EltreumUI.cursorcast
												local d = P.ElvUI_EltreumUI.cursorcast
												return cursorcast.r, cursorcast.g, cursorcast.b, cursorcast.a, d.r, d.g, d.b, d.a
											end,
											set = function(_, r, g, b, a)
												local cursorcast = E.db.ElvUI_EltreumUI.cursorcast
												cursorcast.r, cursorcast.g, cursorcast.b = r, g, b
											end,
										},
										nicegap1 = {
											order = 14,
											type = "description",
											name = "",
											width = 'full',
										},
										gcdclasscolor = {
											type = 'toggle',
											name = L["Class Colored GCD"],
											order = 14,
											desc = L["Use Class Colors for GCD"],
											get = function() return E.db.ElvUI_EltreumUI.cursorgcd.classcolor end,
											set = function(_, value) E.db.ElvUI_EltreumUI.cursorgcd.classcolor = value E:StaticPopup_Show('CONFIG_RL') end,
										},
										colorgcd = {
											order = 15,
											type = 'color',
											name = L["Custom Color GCD"],
											hasAlpha = false,
											disabled = function() return E.db.ElvUI_EltreumUI.cursorgcd.classcolor end,
											get = function()
												local cursorgcd = E.db.ElvUI_EltreumUI.cursorgcd
												local d = P.ElvUI_EltreumUI.cursorgcd
												return cursorgcd.r, cursorgcd.g, cursorgcd.b, cursorgcd.a, d.r, d.g, d.b, d.a
											end,
											set = function(_, r, g, b, a)
												local cursorgcd = E.db.ElvUI_EltreumUI.cursorgcd
												cursorgcd.r, cursorgcd.g, cursorgcd.b = r, g, b
											end,
										},
										nicegap2 = {
											order = 16,
											type = "description",
											name = "",
											width = 'full',
										},
										cursorcursorclasscolor = {
											type = 'toggle',
											name = L["Class Colored Combat"],
											order = 16,
											desc = L["Use Class Colors for Cursor"],
											get = function() return E.db.ElvUI_EltreumUI.cursorcursor.classcolor end,
											set = function(_, value) E.db.ElvUI_EltreumUI.cursorcursor.classcolor = value E:StaticPopup_Show('CONFIG_RL') end,
										},
										cursorcursorcolor = {
											order = 17,
											type = 'color',
											name = L["Custom Color Combat"],
											hasAlpha = false,
											disabled = function() return E.db.ElvUI_EltreumUI.cursorcursor.classcolor end,
											get = function()
												local cursorcursor = E.db.ElvUI_EltreumUI.cursorcursor
												local d = P.ElvUI_EltreumUI.cursorcursor
												return cursorcursor.r, cursorcursor.g, cursorcursor.b, cursorcursor.a, d.r, d.g, d.b, d.a
											end,
											set = function(_, r, g, b, a)
												local cursorcursor = E.db.ElvUI_EltreumUI.cursorcursor
												cursorcursor.r, cursorcursor.g, cursorcursor.b = r, g, b
											end,
										},
										header1 = {
											order = 18,
											type = "description",
											name = "",
											width = 'full',
											image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
										},
										nicegap3 = {
											order = 18,
											type = "description",
											name = L["Cursor Colors "]..'|cffff0000('..L["Requires a Reload"]..")|r",
											width = 'full',
										},
										castradius = {
											type = 'range',
											name = L["Cast Radius (Default: 25)"],
											desc = L["Set the radius of the cast cursor"],
											order = 19,
											min = 10,
											max = 50,
											step = 1,
											width = "full",
											get = function() return E.db.ElvUI_EltreumUI.cursorcast.radius end,
											set = function(_, value) E.db.ElvUI_EltreumUI.cursorcast.radius = value end,
										},
										castthickness = {
											type = 'range',
											name = L["Cast Thickness (Default: 5)"],
											desc = L["Set the radius of the cast cursor"],
											order = 19,
											min = 1,
											max = 10,
											step = 1,
											width = "full",
											get = function() return E.db.ElvUI_EltreumUI.cursorcast.thickness end,
											set = function(_, value) E.db.ElvUI_EltreumUI.cursorcast.thickness = value end,
										},
										gcdradius = {
											type = 'range',
											name = L["GCD Radius (Default: 20)"],
											desc = 'Set the radius of the gcd cursor',
											order = 19,
											min = 10,
											max = 50,
											step = 1,
											width = "full",
											get = function() return E.db.ElvUI_EltreumUI.cursorgcd.radius end,
											set = function(_, value) E.db.ElvUI_EltreumUI.cursorgcd.radius = value end,
										},
										gcdthickness = {
											type = 'range',
											name = L["GCD Thickness (Default: 5)"],
											desc = L["Set the thickness of the gcd cursor"],
											order = 19,
											min = 1,
											max = 10,
											step = 1,
											width = "full",
											get = function() return E.db.ElvUI_EltreumUI.cursorgcd.thickness end,
											set = function(_, value) E.db.ElvUI_EltreumUI.cursorgcd.thickness = value end,
										},
										cursorcursorradius = {
											type = 'range',
											name = L["Combat Cursor Radius (Default: 15)"],
											desc = L["Set the radius of the combat cursor"],
											order = 19,
											min = 10,
											max = 50,
											step = 1,
											width = "full",
											get = function() return E.db.ElvUI_EltreumUI.cursorcursor.radius end,
											set = function(_, value) E.db.ElvUI_EltreumUI.cursorcursor.radius = value end,
										},
										cursorcursorthickness = {
											type = 'range',
											name = L["Combat Cursor Thickness (Default: 5)"],
											desc = L["Set the thickness of the combat cursor"],
											order = 19,
											min = 1,
											max = 10,
											step = 1,
											width = "full",
											get = function() return E.db.ElvUI_EltreumUI.cursorcursor.thickness end,
											set = function(_, value) E.db.ElvUI_EltreumUI.cursorcursor.thickness = value end,
										},
									},
								},
							},
						},

					},
				},
				combatmusic = {
					type = 'group',
					name = L["Combat Music"],
					icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\music',
					order = 85,
					args = {
						moremusicsettings = {
							order = 1,
							type = 'group',
							inline = true,
							name = L["Play music during combat"],
							args = {
								enable = {
									order = 1,
									type = 'toggle',
									name = L["Enable"],
									desc = L["Enable music during combat"],
									width = 'full',
									get = function(info) return E.private.ElvUI_EltreumUI.combatmusic.enable end,
									set = function(info, value) E.private.ElvUI_EltreumUI.combatmusic.enable = value E:StaticPopup_Show('PRIVATE_RL') end,
								},
								instancemusic = {
									order = 2,
									type = 'toggle',
									name = L["Disable in Instances"],
									desc = L["Disable music during combat in instances"],
									width = 'full',
									disabled = function() return not E.private.ElvUI_EltreumUI.combatmusic.enable end,
									get = function(info) return E.private.ElvUI_EltreumUI.combatmusic.disableinstance end,
									set = function(info, value) E.private.ElvUI_EltreumUI.combatmusic.disableinstance = value E:StaticPopup_Show('PRIVATE_RL') end,
								},
								pathtofile = {
									order = 6,
									type = 'group',
									inline = true,
									name = L["Path to file"],
									args = {
										howtomusic = {
										order = 2,
										type = "description",
										name = L["Example: "].."Interface\\Addons\\mymusic.mp3",
										},
										somegap = {
											order = 3,
											type = "description",
											name = "",
										},
										soundpath = {
											order = 6,
											icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\music',
											type = 'input',
											name = '',
											desc = '',
											width = 'full',
											get = function() return E.private.ElvUI_EltreumUI.combatmusic.musicfile end,
											set = function(_, value) E.private.ElvUI_EltreumUI.combatmusic.musicfile = value E:StaticPopup_Show('PRIVATE_RL') end,
										}
									}
								},
							},
						},
					},
				},
				maps = {
					type = 'group',
					name = L["Maps"],
					icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\map',
					order = 85,
					args = {
						waypointetasetting = {
							order = 1,
							type = 'group',
							inline = true,
							name = L["Add a time to arrive below the waypoint"],
							args = {
								explainer = {
									order = 1,
									type = "description",
									name = L["The time will be calculated based on player speed and distance"],
								},
								explainer2 = {
									order = 2,
									type = "description",
									name = L["If the player is not moving then *** will show up since time cannot be calculated"],
								},
								explainer3 = {
									order = 3,
									type = "description",
									name = L["If you move away from the waypoint the time will just increase"],
								},
								explainer4 = {
									order = 4,
									type = "description",
									name = '',
								},
								enable = {
									order = 5,
									type = 'toggle',
									name = 'Enable',
									desc = L["Add an ETA to waypoints"],
									get = function(info) return E.db.ElvUI_EltreumUI.waypointetasetting.enable end,
									set = function(info, value) E.db.ElvUI_EltreumUI.waypointetasetting.enable = value E:StaticPopup_Show('CONFIG_RL') end,
								},
							},
						},
						waytext = {
							order = 2,
							type = 'group',
							inline = true,
							name = L["Enable the /way and /waypoint commands"],
							args = {
								explainer = {
									order = 1,
									type = "description",
									name = L["You can type /way or /waypoint"],
								},
								explainer2 = {
									order = 2,
									type = "description",
									name = L["Use formats such as:"],
								},
								explainer3 = {
									order = 3,
									type = "description",
									name = L["XX YY, XX.XX YY.YY, XX,XX YY,YY and XXX YYY"],
								},
								explainer4 = {
									order = 4,
									type = "description",
									name = L["Other Formats can end up causing errors"],
								},
								enable = {
									order = 5,
									type = 'toggle',
									name = L["Enable"],
									desc = L["Enable the /way and /waypoint commands"],
									get = function(info) return E.db.ElvUI_EltreumUI.waytext.enable end,
									set = function(info, value) E.db.ElvUI_EltreumUI.waytext.enable = value end,
								},
							},
						},
					},
				},
				media = {
					type = 'group',
					name = L["Media"],
					icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\media',
					order = 85,
					args = {
						mediaoptions = {
							order = 1,
							type = 'group',
							inline = true,
							name = L["Setup Media"],
							width = 'full',
							args = {
								private = {
									order = 1,
									type = 'execute',
									name = L["Reset all Media"],
									desc = L["Reset Fonts, Textures, Skins to Eltreum UI defaults."],
									width = 'full',
									func = function() ElvUI_EltreumUI:SetupPrivate() E:StaggeredUpdateAll(nil, true) E:StaticPopup_Show('CONFIG_RL') end,
									confirm = true,
								},
								header1 = {
								order = 3,
								type = "description",
								name = "",
								width = 'full',
								image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								fontdescription= {
								order = 3,
								type = "description",
								name = L["Set the fonts used in Eltruism. Kimberley is the default font"],
								},
								kimberley = {
									order = 4,
									type = 'execute',
									name = 'Kimberley',
									desc = L["This will set all ElvUI fonts as Kimberley"],
									func = function() ElvUI_EltreumUI:SetupFontsKimberley() E:StaggeredUpdateAll(nil, true)  end,
									confirm = true,
								},
								exo2 = {
									order = 5,
									type = 'execute',
									name = 'Exo2',
									desc = L["This will set all ElvUI fonts as Exo2"],
									func = function() ElvUI_EltreumUI:SetupFontsExo2() E:StaggeredUpdateAll(nil, true) end,
									confirm = true,
								},
								addagaphereforfonts = {
								order = 6,
								type = "description",
								name = "",
								--width = "full",
								},
								gotham = {
									order = 7,
									type = 'execute',
									name = 'Gotham',
									desc = L["This will set all ElvUI fonts as Gotham"],
									func = function() ElvUI_EltreumUI:SetupFontsGotham() E:StaggeredUpdateAll(nil, true) end,
									confirm = true,
								},

								roboto = {
									order = 7,
									type = 'execute',
									name = 'Roboto',
									desc = L["This will set all ElvUI fonts as Roboto"],
									func = function() ElvUI_EltreumUI:SetupFontsRoboto() E:StaggeredUpdateAll(nil, true) end,
									confirm = true,
								},
								addagaphereforcustom = {
								order = 8,
								type = "description",
								name = "",
								},
								sharedmediafont = {
									 order = 8,
									 type = 'select',
									 width = "double",
									 dialogControl = 'LSM30_Font',
									 name = L["Or choose a custom font"],
									 desc = L["Choose a different font from the preselected ones"],
									 values = AceGUIWidgetLSMlists.font,
									 get = function()
										  return E.db.ElvUI_EltreumUI.fonts.playerfont
									 end,
									 set = function(self,fontvalue)
										  E.db.ElvUI_EltreumUI.fonts.playerfont = fontvalue
										  ElvUI_EltreumUI:SetupCustomFont(fontvalue)
									 end,
								},
								addagaphereforoutlines = {
								order = 9,
								type = "description",
								name = "",
								},
								addagaphereagain = {
								order = 9,
								type = "description",
								name = "",
								},
								header3 = {
								order = 10,
								type = "description",
								name = "",
								width = 'full',
								image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								fontoutline = {
								order = 11,
								type = "description",
								name = L["Set the Font Outlines everywhere. Use Default to return to Eltruism default settings"],
								width = "full",
								},
								default = {
									order = 12,
									type = 'execute',
									name = L["Defaults"],
									desc = L["This will set fonts to Eltruism defaults, recommended for 4K"],
									func = function() ElvUI_EltreumUI:SetupFontsOutlineDefault() E:StaggeredUpdateAll(nil, true) E:StaticPopup_Show('CONFIG_RL') end,
									confirm = true,
								},
								none = {
									order = 12,
									type = 'execute',
									name = L["None"],
									desc = L["This will set fonts to no outline"],
									func = function() ElvUI_EltreumUI:SetupFontsOutlineNone() E:StaggeredUpdateAll(nil, true) E:StaticPopup_Show('CONFIG_RL') end,
									confirm = true,
								},
								outlinegap = {
								order = 13,
								type = "description",
								name = "",
								},
								outline = {
									order = 13,
									type = 'execute',
									name = L["Outline"],
									desc = L["This will set fonts to use outline, recommended for 1440p and 1080p"],
									func = function() ElvUI_EltreumUI:SetupFontsOutlineOutline() E:StaggeredUpdateAll(nil, true) E:StaticPopup_Show('CONFIG_RL') end,
									confirm = true,
								},
								thick = {
									order = 13,
									type = 'execute',
									name = L["Thick Outline"],
									desc = L["This will set fonts to use thick outline"],
									func = function() ElvUI_EltreumUI:SetupFontsOutlineThick() E:StaggeredUpdateAll(nil, true) E:StaticPopup_Show('CONFIG_RL') end,
									confirm = true,
								},
								header4 = {
								order = 14,
								type = "description",
								name = "",
								width = 'full',
								image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								darklightmode = {
								order = 15,
								type = "description",
								name = L["Change the look of frames to Dark or Light mode"],
								width = "full",
								},
								dark = {
									order = 16,
									type = 'execute',
									name = L["Dark Mode"],
									desc = L["This will set colors to black with class colors when losing health"],
									func = function() ElvUI_EltreumUI:DarkMode() E:StaggeredUpdateAll(nil, true) end,
									confirm = true,
								},
								light = {
									order = 16,
									type = 'execute',
									name = L["Light Mode"],
									desc = L["This will set colors to class based with black backgrounds when losing health"],
									func = function() ElvUI_EltreumUI:LightMode() E:StaggeredUpdateAll(nil, true) end,
									confirm = true,
								},
								header5 = {
									order = 17,
									type = "description",
									name = "",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								levelbossskins = {
									order = 18,
									type = "description",
									name = L["Skin Level Up, Boss Loot and Instance Entrance frames to be class colored"],
									width = "full",
								},
								skinenable = {
									order = 19,
									type = 'toggle',
									name = L['Enable'],
									desc = L["Enable the Skins"],
									get = function(info) return E.db.ElvUI_EltreumUI.skins.enable end,
									set = function(info, value) E.db.ElvUI_EltreumUI.skins.enable = value E:StaticPopup_Show('CONFIG_RL') end,
								},
								header6 = {
									order = 20,
									type = "description",
									name = "",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								expandedstable = {
									order = 21,
									type = "description",
									name = L["Expand Hunter Stables to show all pets and improve search"],
									width = "full",
								},
								stableenable = {
									order = 22,
									type = 'toggle',
									name = 'Enable',
									desc = L["Enable the Expanded Stable"],
									get = function(info) return E.db.ElvUI_EltreumUI.skins.expandedstable end,
									set = function(info, value) E.db.ElvUI_EltreumUI.skins.expandedstable = value E:StaticPopup_Show('CONFIG_RL') end,
								},
								header7 = {
									order = 23,
									type = "description",
									name = "",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								widertransmog = {
									order = 24,
									type = "description",
									name = L["Expand Transmog Window to better show your character"],
									width = "full",
								},
								widetransmogenable = {
									order = 25,
									type = 'toggle',
									name = 'Enable',
									desc = L["Enable the Wider Transmog Window"],
									get = function(info) return E.db.ElvUI_EltreumUI.skins.widertransmog end,
									set = function(info, value) E.db.ElvUI_EltreumUI.skins.widertransmog = value E:StaticPopup_Show('CONFIG_RL') end,
								},
								--[[header10 = {
									order = 32,
									type = "description",
									name = "",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								floatingrep = {
									order = 33,
									type = 'toggle',
									name = L["Enable Floating Reputation Changes"],
									desc = L["Enable the Floating Rep Text"],
									width = 'full',
									get = function(info) return E.db.ElvUI_EltreumUI.otherstuff.floatingrep end,
									set = function(info, value) E.db.ElvUI_EltreumUI.otherstuff.floatingrep = value ElvUI_EltreumUI:floatingrep(value) end,
								},]]--
							},
						},
					},
				},
				nameplates = {
					type = 'group',
					name = L["Nameplates"],
					icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\nameplate',
					order = 85,
					args = {
						header = {
							order = 1,
							type = "description",
							name = "",
							width = 'full',
							image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
						},
						nameplateOptions = {
							order = 2,
							type = 'group',
							inline = true,
							name = L["Class Colored Nameplate Options"],
							args = {
								classhover = {
									order = 1,
									type = 'toggle',
									name = L["Hover"],
									desc = L["Change the color of the hover to be class colored"],
									get = function(info) return E.db.ElvUI_EltreumUI.nameplateOptions.ClassColorGlow end,
									set = function(info, value) E.db.ElvUI_EltreumUI.nameplateOptions.ClassColorGlow = value end,
								},
								classborder = {
									order = 2,
									type = 'toggle',
									name = L["Border"],
									desc = L["Change the color of the border glow to be class bordered in nameplates"],
									get = function(info) return E.db.ElvUI_EltreumUI.nameplateOptions.ClassBorderNameplate end,
									set = function(info, value) E.db.ElvUI_EltreumUI.nameplateOptions.ClassBorderNameplate = value end,
								},
								classtexture = {
									order = 2,
									type = 'toggle',
									name = L["Target Texture"],
									desc = L["Change the texture of the nameplate to be a class gradient"],
									get = function(info) return E.db.ElvUI_EltreumUI.nameplateOptions.nameplatetexture end,
									set = function(info, value) E.db.ElvUI_EltreumUI.nameplateOptions.nameplatetexture = value end,
								},
							},
						},
						addsomegap = {
							order = 3,
							type = "description",
							name = "",
						},
						header2 = {
							order = 4,
							type = "description",
							name = "",
							width = 'full',
							image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
						},
						friendlynameplate = {
							order = 5,
							type = 'group',
							inline = true,
							name = L["Control how Nameplates behave"],
							args = {
								hidehealthinsideinstances = {
									order = 1,
									type = 'toggle',
									name = L["Show Friendly Nameplates but Hide Healthbar"],
									desc = L["Show Friendly Nameplates but Hide Healthbar"],
									width = 'full',
									disabled = function() return E.db.ElvUI_EltreumUI.friendlynameplatetoggle.disablefriendly or E.db.ElvUI_EltreumUI.friendlynameplatetoggle.hidefriendly end,
									get = function(info) return E.db.ElvUI_EltreumUI.friendlynameplatetoggle.friendlynames end,
									set = function(_, value) E.db.ElvUI_EltreumUI.friendlynameplatetoggle.friendlynames = value E:StaticPopup_Show('CONFIG_RL') end,
								},
								nofriendlyinstances = {
									order = 1,
									type = 'toggle',
									name = L["Hide Friendly Nameplates inside Instances"],
									desc = L["Hide Friendly Nameplates inside Instances"],
									width = 'full',
									disabled = function() return E.db.ElvUI_EltreumUI.friendlynameplatetoggle.friendlynames or E.db.ElvUI_EltreumUI.friendlynameplatetoggle.hidefriendly end,
									get = function(info) return E.db.ElvUI_EltreumUI.friendlynameplatetoggle.disablefriendly end,
									set = function(_, value) E.db.ElvUI_EltreumUI.friendlynameplatetoggle.disablefriendly = value E:StaticPopup_Show('CONFIG_RL') end,
								},
								dontshowfriendlyatall = {
									order = 1,
									type = 'toggle',
									name = L["Hide Friendly Nameplates everywhere"],
									desc = L["Hide Friendly Nameplates everywhere"],
									width = 'full',
									disabled = function() return E.db.ElvUI_EltreumUI.friendlynameplatetoggle.friendlynames or E.db.ElvUI_EltreumUI.friendlynameplatetoggle.disablefriendly end,
									get = function(info) return E.db.ElvUI_EltreumUI.friendlynameplatetoggle.hidefriendly end,
									set = function(_, value) E.db.ElvUI_EltreumUI.friendlynameplatetoggle.hidefriendly = value E:StaticPopup_Show('CONFIG_RL') end,
								},
							},
						},
						header3 = {
									order = 6,
									type = "description",
									name = "",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
						},
						verywidenameplate = {
							order = 7,
							type = 'group',
							inline = true,
							name = L["Wide nameplate debuffs and buffs"],
							args = {
								desc = {
									order = 1,
									type = 'toggle',
									name = L["Make Buffs and Debuffs Wide on Nameplates"],
									desc = L["Toogle On and Off"],
									width = 'full',
									get = function() return E.db.ElvUI_EltreumUI.widenameplate.enable end,
									set = function(_, value) E.db.ElvUI_EltreumUI.widenameplate.enable = value end,
								},
							}
						},
						header4 = {
									order = 8,
									type = "description",
									name = "",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
						},
						dynamiclevel = {
							order = 9,
							type = 'group',
							inline = true,
							name = L["Enemy Nameplate Level"],
							args = {
								desc = {
									order = 1,
									type = 'toggle',
									name = L["Hide level on enemy nameplates when you are max level"],
									desc = L["Toogle On and Off"],
									width = 'full',
									get = function() return E.db.ElvUI_EltreumUI.nameplatelevel.enable end,
									set = function(_, value) E.db.ElvUI_EltreumUI.nameplatelevel.enable = value end,
								},
							}
						},
						header5 = {
									order = 10,
									type = "description",
									name = "",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
						},
						nameplatepower = {
							order = 11,
							type = 'group',
							inline = true,
							name = L["Nameplate Power Bar"],
							args = {
								enablepowerbar = {
									order = 1,
									type = 'toggle',
									name = L["Enable Nameplate Power Bar"],
									desc = L["Enable an extra Power Bar on Nameplates for missing powers"],
									width = 'full',
									get = function(info) return E.private.ElvUI_EltreumUI.nameplatepower.enable end,
									set = function(info, value) E.private.ElvUI_EltreumUI.nameplatepower.enable = value E:StaticPopup_Show('PRIVATE_RL') end,
								},
								enableadjust = {
									order = 2,
									type = 'toggle',
									name = L["Enable Autoadjusting Buffs/Debuffs"],
									desc = L["Enable autoadjusting the position of Buffs/Debuffs"],
									width = 'full',
									disabled = function() return not E.private.ElvUI_EltreumUI.nameplatepower.enable end,
									get = function(info) return E.private.ElvUI_EltreumUI.nameplatepower.adjust end,
									set = function(info, value) E.private.ElvUI_EltreumUI.nameplatepower.adjust = value E:StaticPopup_Show('PRIVATE_RL') end,
								},
								addagapforspace4 = {
									order = 3,
									type = "description",
									name = "",
								},
								addagapforspace5 = {
									order = 3,
									type = "description",
									name = "",
								},
								addagapforspace6 = {
									order = 3,
									type = "description",
									name = "",
								},
								enableautoadjust = {
									order = 4,
									type = 'toggle',
									name = L["Enable Autoadjusting the Vertical Position of the Power Bar"],
									desc = L["Power Bar will move automatically based on class/spec/druid form"],
									width = 'full',
									disabled = function() return not E.private.ElvUI_EltreumUI.nameplatepower.enable end,
									get = function(info) return E.db.ElvUI_EltreumUI.nameplatepower.autoadjustposition end,
									set = function(info, value) E.db.ElvUI_EltreumUI.nameplatepower.autoadjustposition = value end,
								},
								powerbarYoffset = {
									type = 'range',
									name = L["Select the Y Offset for the Power Bar (Default 16)"],
									desc = L["Set Y Offset"],
									order = 5,
									min = -100,
									max = 100,
									step = 1,
									width = "full",
									disabled = function() return E.db.ElvUI_EltreumUI.nameplatepower.autoadjustposition end,
									get = function() return E.db.ElvUI_EltreumUI.nameplatepower.posy end,
									set = function(_, value) E.db.ElvUI_EltreumUI.nameplatepower.posy = value end,
								},
								powerbarsizeX = {
									type = 'range',
									name = L["Select the Horizontal Size of the Power Bar (Default 132)"],
									desc = L["Set Horizontal Size"],
									order = 6,
									min = 10,
									max = 300,
									step = 1,
									width = "full",
									disabled = function() return not E.private.ElvUI_EltreumUI.nameplatepower.enable end,
									get = function() return E.db.ElvUI_EltreumUI.nameplatepower.sizex end,
									set = function(_, value) E.db.ElvUI_EltreumUI.nameplatepower.sizex = value end,
								},
								powerbarsizeY = {
									type = 'range',
									name = L["Select the Vertical Size of the Power Bar (Default 6)"],
									desc = L["Set Vertical Size"],
									order = 7,
									min = 2,
									max = 20,
									step = 1,
									width = "full",
									disabled = function() return not E.private.ElvUI_EltreumUI.nameplatepower.enable end,
									get = function() return E.db.ElvUI_EltreumUI.nameplatepower.sizey end,
									set = function(_, value) E.db.ElvUI_EltreumUI.nameplatepower.sizey = value end,
								},
								sharedmediatexture = {
									order = 8,
									type = 'select',
									width = "double",
									dialogControl = 'LSM30_Statusbar',
									name = L["Choose the Power Bar Texture"],
									desc = L["Select a Texture"],
									values = AceGUIWidgetLSMlists.statusbar,
									disabled = function() return not E.private.ElvUI_EltreumUI.nameplatepower.enable end,
									get = function() return E.db.ElvUI_EltreumUI.nameplatepower.texture end,
									set = function(self,key) E.db.ElvUI_EltreumUI.nameplatepower.texture = key end,
								},
								describethis = {
									order = 98,
									type = "description",
									name = L["Select the power types to be displayed:"],
								},
								addagapforspace7 = {
									order = 98,
									type = "description",
									name = "",
								},
								addagapforspace8 = {
									order = 98,
									type = "description",
									name = "",
								},
								addagapforspace9 = {
									order = 98,
									type = "description",
									name = "",
								},
								mana = {
									type = 'toggle',
									name = L["Mana"],
									order = 99,
									disabled = function() return not E.private.ElvUI_EltreumUI.nameplatepower.enable end,
									get = function(info) return E.private.ElvUI_EltreumUI.nameplatepower.mana end,
									set = function(info, value) E.private.ElvUI_EltreumUI.nameplatepower.mana = value E:StaticPopup_Show('PRIVATE_RL') end,
								},
								rage = {
									type = 'toggle',
									name = L["Rage"],
									order = 99,
									disabled = function() return not E.private.ElvUI_EltreumUI.nameplatepower.enable end,
									get = function(info) return E.private.ElvUI_EltreumUI.nameplatepower.rage end,
									set = function(info, value) E.private.ElvUI_EltreumUI.nameplatepower.rage = value E:StaticPopup_Show('PRIVATE_RL') end,
								},
								energy = {
									type = 'toggle',
									name = L["Energy"],
									order = 99,
									disabled = function() return not E.private.ElvUI_EltreumUI.nameplatepower.enable end,
									get = function(info) return E.private.ElvUI_EltreumUI.nameplatepower.energy end,
									set = function(info, value) E.private.ElvUI_EltreumUI.nameplatepower.energy = value E:StaticPopup_Show('PRIVATE_RL') end,
								},
								astral = {
									type = 'toggle',
									name = L["Astral power"],
									order = 99,
									disabled = function() return not E.private.ElvUI_EltreumUI.nameplatepower.enable end,
									get = function(info) return E.private.ElvUI_EltreumUI.nameplatepower.astral end,
									set = function(info, value) E.private.ElvUI_EltreumUI.nameplatepower.astral = value E:StaticPopup_Show('PRIVATE_RL') end,
								},
								runic = {
									type = 'toggle',
									name = L["Runic power"],
									order = 99,
									disabled = function() return not E.private.ElvUI_EltreumUI.nameplatepower.enable end,
									get = function(info) return E.private.ElvUI_EltreumUI.nameplatepower.runic end,
									set = function(info, value) E.private.ElvUI_EltreumUI.nameplatepower.runic = value E:StaticPopup_Show('PRIVATE_RL') end,
								},
								insanity = {
									type = 'toggle',
									name = L["Insanity"],
									order = 99,
									disabled = function() return not E.private.ElvUI_EltreumUI.nameplatepower.enable end,
									get = function(info) return E.private.ElvUI_EltreumUI.nameplatepower.insanity end,
									set = function(info, value) E.private.ElvUI_EltreumUI.nameplatepower.insanity = value E:StaticPopup_Show('PRIVATE_RL') end,
								},
								maelstrom = {
									type = 'toggle',
									name = L["Maelstrom"],
									order = 99,
									disabled = function() return not E.private.ElvUI_EltreumUI.nameplatepower.enable end,
									get = function(info) return E.private.ElvUI_EltreumUI.nameplatepower.maelstrom end,
									set = function(info, value) E.private.ElvUI_EltreumUI.nameplatepower.maelstrom = value E:StaticPopup_Show('PRIVATE_RL') end,
								},
								fury = {
									type = 'toggle',
									name = L["Fury"],
									order = 99,
									disabled = function() return not E.private.ElvUI_EltreumUI.nameplatepower.enable end,
									get = function(info) return E.private.ElvUI_EltreumUI.nameplatepower.fury end,
									set = function(info, value) E.private.ElvUI_EltreumUI.nameplatepower.fury = value E:StaticPopup_Show('PRIVATE_RL') end,
								},
								focus = {
									type = 'toggle',
									name = L["Focus"],
									order = 99,
									disabled = function() return not E.private.ElvUI_EltreumUI.nameplatepower.enable end,
									get = function(info) return E.private.ElvUI_EltreumUI.nameplatepower.focus end,
									set = function(info, value) E.private.ElvUI_EltreumUI.nameplatepower.focus = value E:StaticPopup_Show('PRIVATE_RL') end,
								},
							}
						},
					},
				},
				loottext = {
					type = 'group',
					name = L["Loot"],
					icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\loot',
					order = 85,
					args = {
						lootsetting = {
							order = 1,
							type = 'group',
							inline = true,
							name = L["Show a floating loot text"],
							args = {
								desc = {
									type = 'toggle',
									name = L["Enable"],
									desc = L["Toogle On and Off"],
									order = 1,
									get = function() return E.db.ElvUI_EltreumUI.loottext.enable end,
									set = function(_, value) E.db.ElvUI_EltreumUI.loottext.enable = value E:StaticPopup_Show('CONFIG_RL') end,
								},
								addagaphere = {
									order = 2,
									type = "description",
									name = "",
								},
								addanothergapforfun = {
									order = 2,
									type = "description",
									name = "",
								},
								suboptions = {
									order = 2,
									type = 'group',
									name = L["Choose which types of text:"],
										args = {
											yetanothergap = {
											order = 2,
											type = "description",
											name = "",
											},
											honor = {
												type = 'toggle',
												name = L["Honor"],
												order = 5,
												disabled = function() return not E.db.ElvUI_EltreumUI.loottext.enable end,
												get = function(info) return E.db.ElvUI_EltreumUI.loottext.honor end,
												set = function(info, value) E.db.ElvUI_EltreumUI.loottext.honor = value end,
											},
											currency = {
												type = 'toggle',
												name = L["Currency"],
												order = 5,
												disabled = function() return not E.db.ElvUI_EltreumUI.loottext.enable end,
												get = function(info) return E.db.ElvUI_EltreumUI.loottext.currency end,
												set = function(info, value) E.db.ElvUI_EltreumUI.loottext.currency = value end,
											},
											pet = {
												type = 'toggle',
												name = L["Pets"],
												order = 5,
												disabled = function() return not E.db.ElvUI_EltreumUI.loottext.enable end,
												get = function(info) return E.db.ElvUI_EltreumUI.loottext.pet end,
												set = function(info, value) E.db.ElvUI_EltreumUI.loottext.pet = value end,
											},
										}
								},
								header1 = {
									order = 3,
									type = "description",
									name = "",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								lootscale = {
									type = 'range',
									name = L["Change the scale of LootText"],
									desc = L["Set the size of LootText"],
									order = 4,
									min = .1,
									max = 1.5,
									step = .05,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.loottext.enable end,
									get = function() return E.db.ElvUI_EltreumUI.loottext.scale end,
									set = function(_, value) E.db.ElvUI_EltreumUI.loottext.scale = value end,
								},
								addgaptobenice = {
									order = 5,
									type = "description",
									name = "",
								},
								lootscalereset = {
									type = 'execute',
									name = L["Reset Scale"],
									desc = L["Return LootText to its default scale"],
									order = 9,
									disabled = function() return not E.db.ElvUI_EltreumUI.loottext.enable end,
									func = function() E.db.ElvUI_EltreumUI.loottext.scale = 0.65 end,
								},
								header2 = {
									order = 10,
									type = "description",
									name = "",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								lootstrata = {
									type = 'select',
									name = L["Change the strata of the Loot Text"],
									desc = L["Set the level that LootText will be drawn to this"],
									order = 11,
									values = {
										['BACKGROUND'] = L["Background"],
										['LOW'] = L["Low"],
										['MEDIUM'] = L["Medium"],
										['HIGH'] = L["High"],
										['DIALOG'] = L["Dialog"],
									},
									style = 'radio',
									disabled = function() return not E.db.ElvUI_EltreumUI.loottext.enable end,
									get = function(info) return E.db.ElvUI_EltreumUI.loottext.strata end,
									set = function(info, value) E.db.ElvUI_EltreumUI.loottext.strata = value E:StaticPopup_Show('CONFIG_RL') end,
								},
								header99 = {
									order = 12,
									type = "description",
									name = "",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								lootscalex = {
									type = 'range',
									name = L["Change the Horizontal Position of LootText (Default = 0)"],
									desc = L["Set X offset"],
									order = 13,
									min = -1000,
									max = 1000,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.loottext.enable end,
									get = function() return E.db.ElvUI_EltreumUI.loottext.xOffset end,
									set = function(info, value) E.db.ElvUI_EltreumUI.loottext.xOffset = value end,
									--confirm = true,
								},
								lootscaley = {
									type = 'range',
									name = L["Change the Vertical Position of LootText (Default = 200)"],
									desc = L["Set Y offset"],
									order = 14,
									min = -1000,
									max = 1000,
									step = 1,
									width = "full",
									disabled = function() return not E.db.ElvUI_EltreumUI.loottext.enable end,
									get = function() return E.db.ElvUI_EltreumUI.loottext.yOffset end,
									set = function(info, value) E.db.ElvUI_EltreumUI.loottext.yOffset = value end,
									--confirm = true,
								},
								header98 = {
									order = 15,
									type = "description",
									name = "",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								customfontlootgap = {
									type = 'description',
									name = '',
									width = 'full',
									order = 16,
								},
								customfontlootdesc = {
									type = 'description',
									name = L["Change the font of LootText to be that the ElvUI Default Font found in General"],
									width = 'full',
									order = 17,
								},
								customfontloot = {
									type = 'toggle',
									name = L["Use ElvUI General Font"],
									desc = L["Change the font of LootText"],
									order = 18,
									get = function() return E.db.ElvUI_EltreumUI.loottext.fontsetting end,
									set = function(_, value) E.db.ElvUI_EltreumUI.loottext.fontsetting = value E:StaticPopup_Show('CONFIG_RL') end,
								},
							},
						},
					},
				},
				stealth = {
					type = 'group',
					name = L["Stealth Vignette"],
					icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\stealth',
					order = 85,
					args = {
						stealthOptions = {
							order = 1,
							type = 'group',
							inline = true,
							name = L["Toggle a Stealth Effect"],
							args = {
								stealthframeoptions = {
									order = 1,
									type = 'toggle',
									name = L["Add a vignette effect while in stealth"],
									width = 'full',
									desc = L["Turn the effect on"],
									get = function(info) return E.db.ElvUI_EltreumUI.stealthOptions.stealtheffect end,
									set = function(info, value) E.db.ElvUI_EltreumUI.stealthOptions.stealtheffect = value end,
								},
							},
						},
					},
				},
				chat = {
					type = 'group',
					name = L["Chat"],
					icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\chat',
					order = 85,
					args = {
						chatOptions = {
							order = 1,
							type = 'group',
							inline = true,
							name = L["Chat Options"],
							args = {
								chatfadeenable = {
									order = 1,
									type = 'toggle',
									name = L["Enable ElvUI Chat modifications"],
									width = 'full',
									desc = L["Add fade over time, and mouse over to left and right chat panels"],
									get = function(info) return E.db.ElvUI_EltreumUI.chat.enable end,
									set = function(info, value) E.db.ElvUI_EltreumUI.chat.enable = value E:StaticPopup_Show('CONFIG_RL') end,
								},
								header1 = {
									order = 3,
									type = "description",
									name = "",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								gap1 = {
									order = 4,
									type = "description",
									name = "",
									width = 'full',
								},
								description2 = {
									order = 4,
									type = "description",
									name = L["Add mouse over to the left chat panel"],
								},
								leftmouseover = {
									order = 5,
									type = 'toggle',
									name = L["Left Chat Mouse Over"],
									desc = L["Toggle the option"],
									disabled = function() return not E.db.ElvUI_EltreumUI.chat.enable end,
									get = function(info) return E.db.ElvUI_EltreumUI.chat.leftmouseover end,
									set = function(info, value) E.db.ElvUI_EltreumUI.chat.leftmouseover = value E:StaticPopup_Show('CONFIG_RL') end,
								},
								gap2 = {
									order = 6,
									type = "description",
									name = "",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								description3 = {
									order = 6,
									type = "description",
									name = L["Add a fade to the left chat panel, controlled by ElvUI Chat > Text Fade > Inactivity Timer"],
								},
								leftfade = {
									order = 7,
									type = 'toggle',
									name = L["Left Inactivity Fader"],
									--width = 'full',
									desc = L["Toggle the option"],
									disabled = function() return not E.db.ElvUI_EltreumUI.chat.enable end,
									get = function(info) return E.db.ElvUI_EltreumUI.chat.leftfader end,
									set = function(info, value) E.db.ElvUI_EltreumUI.chat.leftfader = value E:StaticPopup_Show('CONFIG_RL') end,
								},
								gap3 = {
									order = 8,
									type = "description",
									name = "",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								description4 = {
									order = 8,
									type = "description",
									name = L["Add mouse over to the left chat panel"],
								},
								rightmouseover = {
									order = 9,
									type = 'toggle',
									name = L["Right Chat Mouse Over"],
									desc = L["Toggle the option"],
									disabled = function() return not E.db.ElvUI_EltreumUI.chat.enable end,
									get = function(info) return E.db.ElvUI_EltreumUI.chat.rightmouseover end,
									set = function(info, value) E.db.ElvUI_EltreumUI.chat.rightmouseover = value E:StaticPopup_Show('CONFIG_RL') end,
								},
								gap4 = {
									order = 10,
									type = "description",
									name = "",
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								description5 = {
									order = 10,
									type = "description",
									name = L["Add a fade to the right chat panel, controlled by ElvUI Chat > Text Fade > Inactivity Timer"],
								},
								rightfade = {
									order = 11,
									type = 'toggle',
									name = L["Right Inactivity Fader"],
									desc = L["Toggle the option"],
									disabled = function() return not E.db.ElvUI_EltreumUI.chat.enable end,
									get = function(info) return E.db.ElvUI_EltreumUI.chat.rightfader end,
									set = function(info, value) E.db.ElvUI_EltreumUI.chat.rightfader = value E:StaticPopup_Show('CONFIG_RL') end,
								},
								gap5 = {
									order = 12,
									type = "description",
									name = L["Combat Hide"],
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								leftcombathide = {
									order = 13,
									type = 'toggle',
									name = L["Hide Left Chat in Combat"],
									width = 'full',
									desc = L["Toggle the option"],
									disabled = function() return not E.db.ElvUI_EltreumUI.chat.enable end,
									get = function(info) return E.db.ElvUI_EltreumUI.chat.leftcombathide end,
									set = function(info, value) E.db.ElvUI_EltreumUI.chat.leftcombathide = value E:StaticPopup_Show('CONFIG_RL') end,
								},
								rightcombathide = {
									order = 14,
									type = 'toggle',
									name = L["Hide Right Chat in Combat"],
									width = 'full',
									desc = L["Toggle the option"],
									disabled = function() return not E.db.ElvUI_EltreumUI.chat.enable end,
									get = function(info) return E.db.ElvUI_EltreumUI.chat.rightcombathide end,
									set = function(info, value) E.db.ElvUI_EltreumUI.chat.rightcombathide = value E:StaticPopup_Show('CONFIG_RL') end,
								},
								gap6 = {
									order = 15,
									type = "description",
									name = L["Invert left mouse click so that chat starts faded and mouse click will make it stop fading"],
									width = 'full',
									image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', 3240, 1 end,
								},
								invertmouse = {
									order = 16,
									type = 'toggle',
									name = L["Invert Mouse Click"],
									width = 'full',
									desc = L["Toggle the option on"],
									disabled = function() return not E.db.ElvUI_EltreumUI.chat.enable end,
									get = function(info) return E.db.ElvUI_EltreumUI.chat.invertclick end,
									set = function(info, value) E.db.ElvUI_EltreumUI.chat.invertclick = value E:StaticPopup_Show('CONFIG_RL') end,
								},
							},
						},
					},
				},
				afk = {
					type = 'group',
					name = L["A.F.K"],
					icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\afk',
					order = 85,
					args = {
						afkmusic = {
							order = 1,
							type = 'group',
							inline = true,
							name = L["Play music while you are AFK"],
							args = {
								enable = {
								type = 'toggle',
								name = L["Enable"],
								order = 1,
								get = function() return E.db.ElvUI_EltreumUI.afkmusic.enable end,
								set = function(_, value) E.db.ElvUI_EltreumUI.afkmusic.enable = value end,
								},
								addagaphere = {
								order = 2,
								type = "description",
								name = "",
								},
								addanothergapforfun = {
								order = 2,
								type = "description",
								name = "",
								},
								afksoundtype = {
								order = 2,
								type = 'group',
								name = L["Select a type of music"],
									args = {
										yetanothergap = {
										order = 2,
										type = "description",
										name = "",
										},
										racial = {
											type = 'toggle',
											name = L["Racial Music"],
											order = 5,
											disabled = function() return not E.db.ElvUI_EltreumUI.afkmusic.enable or E.db.ElvUI_EltreumUI.afkmusic.playerclass end,
											get = function(info) return E.db.ElvUI_EltreumUI.afkmusic.racial end,
											set = function(info, value) E.db.ElvUI_EltreumUI.afkmusic.racial = value end,
										},
										playerclass = {
											type = 'toggle',
											name = L["Class Music"],
											order = 5,
											disabled = function() return not E.db.ElvUI_EltreumUI.afkmusic.enable or E.db.ElvUI_EltreumUI.afkmusic.racial end,
											get = function(info) return E.db.ElvUI_EltreumUI.afkmusic.playerclass end,
											set = function(info, value) E.db.ElvUI_EltreumUI.afkmusic.playerclass = value end,
										},
									}
								}
							}
						},
					},
				},
				weakauras = {
					type = 'group',
					icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\weakauras',
					name = 'WeakAuras',
					order = 95,
					args = {
						header1 = {
							order = 1,
							type = 'header',
							name = 'WeakAuras',
						},
						explain1 = {
							order = 2,
							type = "description",
							name = L["You can set your Weakauras to anchor to custom locations making it easier to move them"],
						},
						explain2 = {
							order = 3,
							type = "description",
							name = L["In order to use this feature, simply go to your Weakaura, and go to its Group options, scroll down to Position Settings and set the Anchored To Select Frame, then type either |cff82B4ffEltruismWA|r or |cff82B4ffEltruismConsumables|r to anchor the weakaura to the preset location"],
						},
						explain3 = {
							order = 4,
							type = "description",
							name = L["Setting "].."|cff82B4ffEltruismWA|r"..L[" or "].."|cff82B4ffEltruismConsumables|r"..L[" as the anchor will move them to the locations, keep in mind you might need to change the X and Y offset of the weakaura to zero"],
						},
						explainer1 = {
							order = 5,
							type = "group",
							name = 'WeakAuras',
							inline = true,
							args = {
								addaspaceher544e = {
									order = 86,
									type = "description",
									name = '',
								},
								explainer7 = {
									order = 87,
									type = "description",
									name = L["My WeakAuras are available here, but are not focused on one class. Consider them more like upcoming features."],
								},
								addaspacehere = {
									order = 88,
									type = "description",
									name = '',
								},
								wago = {
									order = 89,
									type = 'input',
									width = 'normal',
									name = L["All weakauras"],
									get = function() return 'wago.io/p/Eltreum' end,
								},
								addsomegap = {
										order = 90,
										type = "description",
										name = "",
								},
								nameplatepowerbar = {
									order = 91,
									type = 'input',
									width = 'full',
									name = L["Nameplate Power Bar"],
									get = function() return 'https://wago.io/MHkYMit7S' end,
								},
								addsomegap2 = {
										order = 92,
										type = "description",
										name = "",
								},
								bossnameplate = {
									order = 93,
									type = 'input',
									width = 'full',
									name = L["Boss nameplate at base"],
									get = function() return 'https://wago.io/M7yrCgMnE' end,
								},
								addsomegap3 = {
										order = 94,
										type = "description",
										name = "",
								},
								executenameplate = {
									order = 95,
									type = 'input',
									width = 'full',
									name = L["Executes next to nameplates"],
									get = function() return 'https://wago.io/afJKwFwAX' end,
								},
							},
						},
					},
				},
				discord = {
					type = 'group',
					name = 'Discord',
					icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\discord',
					order = 96,
					args = {
						logodiscord = {
							type = 'description',
							name = "",
							order = 1,
							image = function() return 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\disc', 256, 128 end,
						},
						explainer8 = {
							order = 2,
							type = "description",
							name = L["Join the Discord if you have any questions or issues"],
						},
						addaspacehere4 = {
							order = 3,
							type = "description",
							name = L["Keep in mind the discord is in English"],
						},
						discordinvitelink = {
							order = 19,
							type = 'input',
							width = 'full',
							name = '',
							get = function() return 'https://discord.gg/cXfA56gmYW' end,
						},
					},
				},
				changelog = {
					type = 'group',
					name = L["Changelog"],
					icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\changelog',
					order = 97,
					args = {
						changelogchoice = {
							 order = 18,
							 type = 'select',
							 width = "double",
							 style = 'dropdown',
							 name = L["Select a version:"],
							 desc = L["Choose a version to see its changelog"],
							 values = {
							 	["2.2.0"] = "2.2.0",
								["2.0.0"] = "2.0.0",
								["1.0.0"] = "1.0.0",
							},
							 get = function() return E.db.ElvUI_EltreumUI.changelog.version end,
							 set = function(self,value) E.db.ElvUI_EltreumUI.changelog.version = value end,
						},
						changelogtext = {
							order = 19,
							type = 'description',
							width = 'full',
							name = function() return ElvUI_EltreumUI:Changelog() end,
						},
					},
				},
				credits = {
					type = 'group',
					name = L["Credits"],
					icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\credits',
					order = 97,
					args = {
						author = {
							order = 1,
							type = 'group',
							inline = true,
							name = L["Author"],
							args = {
								desc = {
									order = 1,
									type = 'description',
									fontSize = 'medium',
									name = AUTHORS_STRING,
								},
							},
						},
						thankyou = {
							order = 2,
							type = 'group',
							inline = true,
							name = L["Credits and Thank yous"],
							args = {
								desc = {
									order = 1,
									type = 'description',
									fontSize = 'medium',
									name = THANKYOU_STRING,
								},
							},
						},
						licensewarning = {
							order = 99,
							type = 'group',
							inline = true,
							name = L["License"],
							args = {
								desc = {
									order = 1,
									type = 'description',
									fontSize = 'medium',
									name = 'Icons8 (www.icons8.com) for some of the icons. List in license.txt\nLootText is licensed under GNU GPLv3 and is a fork of SLoTe from xavjer\nCursor is licensed under GNU GPLv3 and is a fork of CastCursor by michaelsp',
								},
							},
						},
					},
				},
				support = {
					type = 'group',
					name = L["Support"],
					icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\support',
					order = 98,
					args = {
						gitlink = {
							order = 1,
							type = 'input',
							width = 'full',
							name = L["New commits, basically a preview of fixes or upcoming features"],
							get = function() return 'https://git.tukui.org/eltreum/eltruism/-/commits/main' end,
						},
						issues = {
							order = 2,
							type = 'input',
							width = 'full',
							name = L["Report issues and problems here:"],
							get = function() return 'https://git.tukui.org/eltreum/eltruism/-/issues' end,
						},
						tukui = {
							order = 3,
							type = 'input',
							width = 'full',
							name = L["Addon on Tukui:"],
							get = function() return 'https://www.tukui.org/addons.php?id=209' end,
						},
						curse = {
							order = 4,
							type = 'input',
							width = 'full',
							name = L["Addon on CurseForge:"],
							get = function() return 'https://www.curseforge.com/wow/addons/elvui-eltruism' end,
						},
					},
				},
			},
		}
		for _, func in pairs(ElvUI_EltreumUI.Config) do
			func()
		end
	end
end
