Quantcast

Messing up with all the stuff

Darthpred [10-15-12 - 09:34]
Messing up with all the stuff

Moving files, deleteing unneeded and all that crap
Filename
ElvUI_SLE/ElvUI_SLE.lua
ElvUI_SLE/ElvUI_SLE.toc
ElvUI_SLE/config/profile.lua
ElvUI_SLE/core/install.lua
ElvUI_SLE/core/load_core.xml
ElvUI_SLE/core/options.lua
ElvUI_SLE/core/test.lua
ElvUI_SLE/libs/oUF_Vengeance/oUF_Vengeance.lua
ElvUI_SLE/libs/oUF_Vengeance/oUF_Vengeance.toc
ElvUI_SLE/media/textures/chat_1.tga
ElvUI_SLE/media/textures/logo_elvui_sle.tga
ElvUI_SLE/media/textures/outfitter.tga
ElvUI_SLE/modules/errors/errors.lua
ElvUI_SLE/modules/errors/load_errors.xml
ElvUI_SLE/modules/errors/options.lua
ElvUI_SLE/modules/install.lua
ElvUI_SLE/modules/load_modules.xml
ElvUI_SLE/modules/options.lua
ElvUI_SLE/modules/skins/addons/load_addons.xml
ElvUI_SLE/modules/skins/addons/notes.lua
ElvUI_SLE/modules/skins/addons/oces.lua
ElvUI_SLE/modules/skins/addons/tdb.lua
ElvUI_SLE/modules/skins/blizzard/extraab.lua
ElvUI_SLE/modules/skins/blizzard/load_blizzard.xml
ElvUI_SLE/modules/skins/blizzard/misc.lua
ElvUI_SLE/modules/skins/blizzard/petbattle.lua
ElvUI_SLE/modules/skins/blizzard/searchmounts.lua
ElvUI_SLE/modules/skins/embedright.lua
ElvUI_SLE/modules/skins/load_skins.xml
ElvUI_SLE/modules/skins/options.lua
ElvUI_SLE/modules/test.lua
ElvUI_SLE/modules/uibuttons/uibuttons.lua
ElvUI_SLE/skins/addons/load_addons.xml
ElvUI_SLE/skins/addons/notes.lua
ElvUI_SLE/skins/addons/oces.lua
ElvUI_SLE/skins/blizzard/extraab.lua
ElvUI_SLE/skins/blizzard/load_blizzard.xml
ElvUI_SLE/skins/blizzard/misc.lua
ElvUI_SLE/skins/blizzard/petbattle.lua
ElvUI_SLE/skins/blizzard/searchmounts.lua
ElvUI_SLE/skins/load_skins.xml
ElvUI_SLE/skins/options.lua
ElvUI_SLE/textures/chat_1.tga
ElvUI_SLE/textures/logo_elvui_sle.tga
ElvUI_SLE/textures/outfitter.tga
diff --git a/ElvUI_SLE/ElvUI_SLE.lua b/ElvUI_SLE/ElvUI_SLE.lua
index 1f9099f..c19d9cc 100644
--- a/ElvUI_SLE/ElvUI_SLE.lua
+++ b/ElvUI_SLE/ElvUI_SLE.lua
@@ -17,6 +17,18 @@ function SLE:UpdateThings()
 	end
 end

+function SLE:LootShow() --Needs to be run on PLAYER_ENTERING_WORLD event = loading screen ends. Also need a module assinged.
+	local inInstance, instanceType = IsInInstance()
+	--local isDungeon = (instanceType == "party")
+	if (inInstance and (instanceType == "party" or "raid") and E.db.sle.lootwin) then --in instance with option enabled
+		LootHistoryFrame:Show()
+	elseif (inInstance and (instanceType == "party" or "raid") and not E.db.sle.lootwin) then --in instance with option disabled
+	elseif (not inInstance and E.db.sle.autoloot) then--out of instance with option enabled
+		LootHistoryFrame:Hide()
+	else --out of instance with option disabled
+	end
+end
+
 E.PopupDialogs["VERSION_MISMATCH"] = {
 	text = L["Your version of ElvUI is older than recommended to use with Shadow & Light Edit. Please, download the latest version from tukui.org."],
 	button1 = CLOSE,
@@ -26,7 +38,7 @@ E.PopupDialogs["VERSION_MISMATCH"] = {
 }

 --Showing warning message about too old versions of ElvUI
-if tonumber(E.version) < 4.00 then
+if tonumber(E.version) < 4.50 then
 	E:StaticPopup_Show("VERSION_MISMATCH")
 end

@@ -49,6 +61,7 @@ end

 function SLE:Initialize()
 	self:RegisterEvent("PLAYER_REGEN_DISABLED", "UpdateThings");
+	self:RegisterEvent('PLAYER_ENTERING_WORLD', 'LootShow');
 	if E.db.general.loginmessage then
 		print(L['SLE_LOGIN_MSG'])
 	end
diff --git a/ElvUI_SLE/ElvUI_SLE.toc b/ElvUI_SLE/ElvUI_SLE.toc
index 0324f17..b244629 100644
--- a/ElvUI_SLE/ElvUI_SLE.toc
+++ b/ElvUI_SLE/ElvUI_SLE.toc
@@ -1,20 +1,20 @@
-## Interface: 50001
-## Title: |cff1784d1ElvUI |rShadow and Light Edit
-## Author: Darth Predator, Repooc
-## Version: 1.18
-## Notes: Plugin-edit for |cff1784d1ElvUI|r.
-## Notes-ruRU: Плагин-редакция для |cff1784d1ElvUI|r.
-## eMail: darthpred@gmail.com, repooc@tukui.org
-## URL: http://tukui.org/
-## RequiredDeps: ElvUI
-## OptionalDeps: Skada, CoolLine, Poisoner
-## DefaultState: Enabled
-
-libs\load_libs.xml
-locales\load_locales.xml
-media\load_media.xml
-ElvUI_SLE.lua
-core\load_core.xml
-modules\load_modules.xml
-config\load_config.xml
+## Interface: 50001
+## Title: |cff1784d1ElvUI |rShadow and Light Edit
+## Author: Darth Predator, Repooc
+## Version: 1.18
+## Notes: Plugin-edit for |cff1784d1ElvUI|r.
+## Notes-ruRU: Плагин-редакция для |cff1784d1ElvUI|r.
+## eMail: darthpred@gmail.com, repooc@tukui.org
+## URL: http://tukui.org/
+## RequiredDeps: ElvUI
+## OptionalDeps: Skada, CoolLine, Poisoner
+## DefaultState: Enabled
+
+libs\load_libs.xml
+locales\load_locales.xml
+media\load_media.xml
+ElvUI_SLE.lua
+modules\load_modules.xml
+skins\load_skins.xml
+config\load_config.xml
 layout\layout.lua
\ No newline at end of file
diff --git a/ElvUI_SLE/config/profile.lua b/ElvUI_SLE/config/profile.lua
index fae8625..7cf4f6b 100644
--- a/ElvUI_SLE/config/profile.lua
+++ b/ElvUI_SLE/config/profile.lua
@@ -144,7 +144,7 @@ P['sle'] = {
 	},

 	--Autoloot
-	['autoloot'] = false,
+	['lootwin'] = false,
 }

 --For some reason datatext settings refuses to work if there is no general setting block here O_o
diff --git a/ElvUI_SLE/core/install.lua b/ElvUI_SLE/core/install.lua
deleted file mode 100644
index 48e15fd..0000000
--- a/ElvUI_SLE/core/install.lua
+++ /dev/null
@@ -1,1772 +0,0 @@
-local E, L, V, P, G = unpack(ElvUI); --Inport: Engine, Locales, PrivateDB, ProfileDB, GlobalDB
-local UF = E:GetModule('UnitFrames');
-
-local CURRENT_PAGE = 0
-local MAX_PAGE
-
-local function MaxPages()
-	if IsAddOnLoaded("ElvUI_Hud") then
-		MAX_PAGE = 10
-	else
-		MAX_PAGE = 9
-	end
-end
-
-local function SetupChat()
-	InstallStepComplete.message = L["Chat Set"]
-	InstallStepComplete:Show()
-	FCF_ResetChatWindows()
-	FCF_SetLocked(ChatFrame1, 1)
-	FCF_DockFrame(ChatFrame2)
-	FCF_SetLocked(ChatFrame2, 1)
-
-	FCF_OpenNewWindow(LOOT)
-	FCF_UnDockFrame(ChatFrame3)
-	FCF_SetLocked(ChatFrame3, 1)
-	ChatFrame3:Show()
-
-	for i = 1, NUM_CHAT_WINDOWS do
-		local frame = _G[format("ChatFrame%s", i)]
-		local chatFrameId = frame:GetID()
-		local chatName = FCF_GetChatWindowInfo(chatFrameId)
-
-		-- move general bottom left
-		if i == 1 then
-			frame:ClearAllPoints()
-			frame:Point("BOTTOMLEFT", LeftChatToggleButton, "TOPLEFT", 1, 3)
-		elseif i == 3 then
-			frame:ClearAllPoints()
-			frame:Point("BOTTOMLEFT", RightChatDataPanel, "TOPLEFT", 1, 3)
-		end
-
-		FCF_SavePositionAndDimensions(frame)
-		FCF_StopDragging(frame)
-
-		-- set default Elvui font size
-		FCF_SetChatWindowFontSize(nil, frame, 12)
-
-		-- rename windows general because moved to chat #3
-		if i == 1 then
-			FCF_SetWindowName(frame, GENERAL)
-		elseif i == 2 then
-			FCF_SetWindowName(frame, GUILD_EVENT_LOG)
-		elseif i == 3 then
-			FCF_SetWindowName(frame, LOOT.." / "..TRADE)
-		end
-	end
-
-	ChatFrame_RemoveAllMessageGroups(ChatFrame1)
-	ChatFrame_AddMessageGroup(ChatFrame1, "SAY")
-	ChatFrame_AddMessageGroup(ChatFrame1, "EMOTE")
-	ChatFrame_AddMessageGroup(ChatFrame1, "YELL")
-	ChatFrame_AddMessageGroup(ChatFrame1, "GUILD")
-	ChatFrame_AddMessageGroup(ChatFrame1, "OFFICER")
-	ChatFrame_AddMessageGroup(ChatFrame1, "GUILD_ACHIEVEMENT")
-	ChatFrame_AddMessageGroup(ChatFrame1, "WHISPER")
-	ChatFrame_AddMessageGroup(ChatFrame1, "MONSTER_SAY")
-	ChatFrame_AddMessageGroup(ChatFrame1, "MONSTER_EMOTE")
-	ChatFrame_AddMessageGroup(ChatFrame1, "MONSTER_YELL")
-	ChatFrame_AddMessageGroup(ChatFrame1, "MONSTER_BOSS_EMOTE")
-	ChatFrame_AddMessageGroup(ChatFrame1, "PARTY")
-	ChatFrame_AddMessageGroup(ChatFrame1, "PARTY_LEADER")
-	ChatFrame_AddMessageGroup(ChatFrame1, "RAID")
-	ChatFrame_AddMessageGroup(ChatFrame1, "RAID_LEADER")
-	ChatFrame_AddMessageGroup(ChatFrame1, "RAID_WARNING")
-	ChatFrame_AddMessageGroup(ChatFrame1, "BATTLEGROUND")
-	ChatFrame_AddMessageGroup(ChatFrame1, "BATTLEGROUND_LEADER")
-	ChatFrame_AddMessageGroup(ChatFrame1, "BG_HORDE")
-	ChatFrame_AddMessageGroup(ChatFrame1, "BG_ALLIANCE")
-	ChatFrame_AddMessageGroup(ChatFrame1, "BG_NEUTRAL")
-	ChatFrame_AddMessageGroup(ChatFrame1, "SYSTEM")
-	ChatFrame_AddMessageGroup(ChatFrame1, "ERRORS")
-	ChatFrame_AddMessageGroup(ChatFrame1, "AFK")
-	ChatFrame_AddMessageGroup(ChatFrame1, "DND")
-	ChatFrame_AddMessageGroup(ChatFrame1, "IGNORED")
-	ChatFrame_AddMessageGroup(ChatFrame1, "ACHIEVEMENT")
-	ChatFrame_AddMessageGroup(ChatFrame1, "BN_WHISPER")
-	ChatFrame_AddMessageGroup(ChatFrame1, "BN_CONVERSATION")
-	ChatFrame_AddMessageGroup(ChatFrame1, "BN_INLINE_TOAST_ALERT")
-
-
-	ChatFrame_RemoveAllMessageGroups(ChatFrame3)
-	ChatFrame_AddMessageGroup(ChatFrame3, "COMBAT_FACTION_CHANGE")
-	ChatFrame_AddMessageGroup(ChatFrame3, "SKILL")
-	ChatFrame_AddMessageGroup(ChatFrame3, "LOOT")
-	ChatFrame_AddMessageGroup(ChatFrame3, "MONEY")
-	ChatFrame_AddMessageGroup(ChatFrame3, "COMBAT_XP_GAIN")
-	ChatFrame_AddMessageGroup(ChatFrame3, "COMBAT_HONOR_GAIN")
-	ChatFrame_AddMessageGroup(ChatFrame3, "COMBAT_GUILD_XP_GAIN")
-	ChatFrame_AddChannel(ChatFrame1, GENERAL)
-	ChatFrame_RemoveChannel(ChatFrame1, L['Trade'])
-	ChatFrame_AddChannel(ChatFrame3, L['Trade'])
-
-
-	if E.myname == "Elvz" then
-		SetCVar("scriptErrors", 1)
-	end
-
-	-- enable classcolor automatically on login and on each character without doing /configure each time.
-	ToggleChatColorNamesByClassGroup(true, "SAY")
-	ToggleChatColorNamesByClassGroup(true, "EMOTE")
-	ToggleChatColorNamesByClassGroup(true, "YELL")
-	ToggleChatColorNamesByClassGroup(true, "GUILD")
-	ToggleChatColorNamesByClassGroup(true, "OFFICER")
-	ToggleChatColorNamesByClassGroup(true, "GUILD_ACHIEVEMENT")
-	ToggleChatColorNamesByClassGroup(true, "ACHIEVEMENT")
-	ToggleChatColorNamesByClassGroup(true, "WHISPER")
-	ToggleChatColorNamesByClassGroup(true, "PARTY")
-	ToggleChatColorNamesByClassGroup(true, "PARTY_LEADER")
-	ToggleChatColorNamesByClassGroup(true, "RAID")
-	ToggleChatColorNamesByClassGroup(true, "RAID_LEADER")
-	ToggleChatColorNamesByClassGroup(true, "RAID_WARNING")
-	ToggleChatColorNamesByClassGroup(true, "BATTLEGROUND")
-	ToggleChatColorNamesByClassGroup(true, "BATTLEGROUND_LEADER")
-	ToggleChatColorNamesByClassGroup(true, "CHANNEL1")
-	ToggleChatColorNamesByClassGroup(true, "CHANNEL2")
-	ToggleChatColorNamesByClassGroup(true, "CHANNEL3")
-	ToggleChatColorNamesByClassGroup(true, "CHANNEL4")
-	ToggleChatColorNamesByClassGroup(true, "CHANNEL5")
-	ToggleChatColorNamesByClassGroup(true, "CHANNEL6")
-	ToggleChatColorNamesByClassGroup(true, "CHANNEL7")
-	ToggleChatColorNamesByClassGroup(true, "CHANNEL8")
-	ToggleChatColorNamesByClassGroup(true, "CHANNEL9")
-	ToggleChatColorNamesByClassGroup(true, "CHANNEL10")
-	ToggleChatColorNamesByClassGroup(true, "CHANNEL11")
-
-	--Adjust Chat Colors
-	--General
-	ChangeChatColor("CHANNEL1", 195/255, 230/255, 232/255)
-	--Trade
-	ChangeChatColor("CHANNEL2", 232/255, 158/255, 121/255)
-	--Local Defense
-	ChangeChatColor("CHANNEL3", 232/255, 228/255, 121/255)
-
-	if E.Chat then
-		E.Chat:PositionChat(true)
-		if E.db['RightChatPanelFaded'] then
-			RightChatToggleButton:Click()
-		end
-
-		if E.db['LeftChatPanelFaded'] then
-			LeftChatToggleButton:Click()
-		end
-	end
-end
-
-local function SetupCVars()
-	SetCVar("mapQuestDifficulty", 1)
-	SetCVar("ShowClassColorInNameplate", 1)
-	SetCVar("screenshotQuality", 10)
-	SetCVar("chatMouseScroll", 1)
-	SetCVar("chatStyle", "classic")
-	SetCVar("WholeChatWindowClickable", 0)
-	SetCVar("ConversationMode", "inline")
-	SetCVar("showTutorials", 0)
-	SetCVar("UberTooltips", 1)
-	SetCVar("threatWarning", 3)
-	SetCVar('alwaysShowActionBars', 1)
-	SetCVar('lockActionBars', 1)
-	SetCVar('SpamFilter', 0) --Blocks mmo-champion.com, dumb... ElvUI one is more effeciant anyways.
-	InterfaceOptionsActionBarsPanelPickupActionKeyDropDown:SetValue('SHIFT')
-	InterfaceOptionsActionBarsPanelPickupActionKeyDropDown:RefreshValue()
-
-	InstallStepComplete.message = L["CVars Set"]
-	InstallStepComplete:Show()
-end
-
-function E:GetColor(r, b, g, a)
-	return { r = r, b = b, g = g, a = a }
-end
-
-function E:SetupTheme(theme, noDisplayMsg)
-	local classColor = RAID_CLASS_COLORS[E.myclass]
-	E.db.theme = theme
-
-
-	--Set colors
-	if theme == "classic" then
-		E.db.general.bordercolor = E:GetColor(.31, .31, .31)
-		E.db.general.backdropcolor = E:GetColor(.1, .1, .1)
-		E.db.general.backdropfadecolor = E:GetColor(.06, .06, .06, .8)
-
-		E.db.unitframe.colors.healthclass = false
-		E.db.unitframe.colors.health = E:GetColor(.31, .31, .31)
-		E.db.unitframe.colors.auraBarBuff = E:GetColor(.31, .31, .31)
-		E.db.unitframe.colors.castColor = E:GetColor(.31, .31, .31)
-
-	elseif theme == "class" then
-		E.db.general.bordercolor = E:GetColor(classColor.r, classColor.b, classColor.g)
-		E.db.general.backdropcolor = E:GetColor(.1, .1, .1)
-		E.db.general.backdropfadecolor = E:GetColor(.06, .06, .06, .8)
-		E.db.unitframe.colors.auraBarBuff = E:GetColor(classColor.r, classColor.b, classColor.g)
-		E.db.unitframe.colors.healthclass = true
-		E.db.unitframe.colors.castColor = E:GetColor(classColor.r, classColor.b, classColor.g)
-	else
-		E.db.general.bordercolor = E:GetColor(.1, .1, .1)
-		E.db.general.backdropcolor = E:GetColor(.1, .1, .1)
-		E.db.general.backdropfadecolor = E:GetColor(.054, .054, .054, .8)
-		E.db.unitframe.colors.auraBarBuff = E:GetColor(.1, .1, .1)
-		E.db.unitframe.colors.healthclass = false
-		E.db.unitframe.colors.health = E:GetColor(.1, .1, .1)
-		E.db.unitframe.colors.castColor = E:GetColor(.1, .1, .1)
-	end
-
-	--Value Color
-	if theme == "class" then
-		E.db.general.valuecolor = E:GetColor(classColor.r, classColor.b, classColor.g)
-	else
-		E.db.general.valuecolor = E:GetColor(.09, .819, .513)
-	end
-
-	if not noDisplayMsg then
-		E:UpdateAll(true)
-	end
-
-	if InstallStatus then
-		InstallStatus:SetStatusBarColor(unpack(E['media'].rgbvaluecolor))
-
-		if InstallStepComplete and not noDisplayMsg then
-			InstallStepComplete.message = L["Theme Set"]
-			InstallStepComplete:Show()
-		end
-	end
-end
-
-function E:SetupResolution(noDataReset)
-	if not noDataReset then
-		E:ResetMovers('')
-	end
-
-	if self == 'low' then
-		if not E.db.movers then E.db.movers = {}; end
-		if not noDataReset then
-			E.db.chat.panelWidth = 400
-			E.db.chat.panelHeight = 180
-
-			E:CopyTable(E.db.actionbar, P.actionbar)
-
-			E.db.actionbar.bar1.heightMult = 2;
-			E.db.actionbar.bar2.enabled = true;
-			E.db.actionbar.bar3.enabled = false;
-			E.db.actionbar.bar5.enabled = false;
-		end
-
-		if not noDataReset then
-			E.db.auras.wrapAfter = 10;
-		end
-		E.db.general.reputation.width = 400
-		E.db.general.experience.width = 400
-		E.db.movers.ElvAB_2 = "CENTERElvUIParentBOTTOM056.18"
-
-		if not noDataReset then
-			E:CopyTable(E.db.unitframe.units, P.unitframe.units)
-
-			E.db.unitframe.fontSize = 10
-
-			E.db.unitframe.units.player.width = 200;
-			E.db.unitframe.units.player.castbar.width = 200;
-			E.db.unitframe.units.player.classbar.fill = 'fill';
-			E.db.unitframe.units.player.health.text_format = "[healthcolor][health:current]"
-
-			E.db.unitframe.units.target.width = 200;
-			E.db.unitframe.units.target.castbar.width = 200;
-			E.db.unitframe.units.target.health.text_format = '[healthcolor][health:current]'
-
-			E.db.unitframe.units.pet.power.enable = false;
-			E.db.unitframe.units.pet.width = 200;
-			E.db.unitframe.units.pet.height = 26;
-
-			E.db.unitframe.units.targettarget.debuffs.enable = false;
-			E.db.unitframe.units.targettarget.power.enable = false;
-			E.db.unitframe.units.targettarget.width = 200;
-			E.db.unitframe.units.targettarget.height = 26;
-
-			E.db.unitframe.units.boss.width = 200;
-			E.db.unitframe.units.boss.castbar.width = 200;
-			E.db.unitframe.units.arena.width = 200;
-			E.db.unitframe.units.arena.castbar.width = 200;
-		end
-
-		E.db.movers.ElvUF_PlayerMover = "BOTTOMElvUIParentBOTTOM-106135"
-		E.db.movers.ElvUF_TargetTargetMover = "BOTTOMElvUIParentBOTTOM10680"
-		E.db.movers.ElvUF_TargetMover = "BOTTOMElvUIParentBOTTOM106135"
-		E.db.movers.ElvUF_PetMover = "BOTTOMElvUIParentBOTTOM-10680"
-		E.db.movers.ElvUF_FocusMover = "BOTTOMElvUIParentBOTTOM310332"
-
-		E.db.lowresolutionset = true;
-	elseif not noDataReset then
-		E.db.chat.panelWidth = P.chat.panelWidth
-		E.db.chat.panelHeight = P.chat.panelHeight
-
-		E:CopyTable(E.db.actionbar, P.actionbar)
-		E:CopyTable(E.db.unitframe.units, P.unitframe.units)
-
-		E.db.auras.wrapAfter = P.auras.wrapAfter;
-		E.db.general.reputation.width = P.general.reputation.width
-		E.db.general.experience.width = P.general.experience.width
-
-		E.db.lowresolutionset = nil;
-	end
-
-	if not noDataReset and E.db.theme then
-		E:SetupTheme(E.db.theme, true)
-	end
-
-	E:UpdateAll(true)
-
-	if InstallStepComplete and not noDataReset then
-		InstallStepComplete.message = L["Resolution Style Set"]
-		InstallStepComplete:Show()
-	end
-end
-
-function E:SetupLayout(layout, noDataReset)
-	--Unitframes
-	if not noDataReset then
-		E:CopyTable(E.db.unitframe.units, P.unitframe.units)
-	end
-	if layout == 'healer' then
-		if not IsAddOnLoaded('Clique') then
-			E:Print(L['Using the healer layout it is highly recommended you download the addon Clique to work side by side with ElvUI.'])
-		end
-
-		if not noDataReset then
-			E.db.unitframe.units.party.health.frequentUpdates = true;
-			E.db.unitframe.units.raid25.health.frequentUpdates = true;
-			E.db.unitframe.units.raid40.health.frequentUpdates = true;
-
-			E.db.unitframe.units.raid40.height = 36;
-			E.db.unitframe.units.raid40.health.text = true;
-			E.db.unitframe.units.raid40.name.position = 'TOP';
-			E.db.unitframe.units.raid40.roleIcon.enable = true;
-			E.db.unitframe.units.boss.width = 200;
-			E.db.unitframe.units.boss.castbar.width = 200;
-			E.db.unitframe.units.arena.width = 200;
-			E.db.unitframe.units.arena.castbar.width = 200;
-
-			E.db.unitframe.units.party.point = 'LEFT';
-			E.db.unitframe.units.party.xOffset = 5;
-			E.db.unitframe.units.party.healPrediction = true;
-			E.db.unitframe.units.party.columnAnchorPoint = 'LEFT';
-			E.db.unitframe.units.party.width = 80;
-			E.db.unitframe.units.party.height = 52;
-			E.db.unitframe.units.party.health.text_format = "[healthcolor][health:deficit]"
-			E.db.unitframe.units.party.health.position = 'BOTTOM';
-			E.db.unitframe.units.party.health.orientation = 'VERTICAL';
-			E.db.unitframe.units.party.name.position = 'TOP';
-			E.db.unitframe.units.party.name.length = "SHORT";
-			E.db.unitframe.units.party.debuffs.anchorPoint = 'BOTTOMLEFT';
-			E.db.unitframe.units.party.debuffs.initialAnchor = 'TOPLEFT';
-			E.db.unitframe.units.party.debuffs.useFilter = 'Blacklist';
-			E.db.unitframe.units.party.debuffs.sizeOverride = 0;
-			E.db.unitframe.units.party.petsGroup.enable = true;
-			E.db.unitframe.units.party.petsGroup.width = 80;
-			E.db.unitframe.units.party.petsGroup.initialAnchor = 'BOTTOM';
-			E.db.unitframe.units.party.petsGroup.anchorPoint = 'TOP';
-			E.db.unitframe.units.party.petsGroup.xOffset = 0;
-			E.db.unitframe.units.party.petsGroup.yOffset = 1;
-			E.db.unitframe.units.party.targetsGroup.enable = false;
-			E.db.unitframe.units.party.targetsGroup.width = 80;
-			E.db.unitframe.units.party.targetsGroup.initialAnchor = 'BOTTOM';
-			E.db.unitframe.units.party.targetsGroup.anchorPoint = 'TOP';
-			E.db.unitframe.units.party.targetsGroup.xOffset = 0;
-			E.db.unitframe.units.party.targetsGroup.yOffset = 1;
-
-			E.db.unitframe.units.raid25.healPrediction = true;
-			E.db.unitframe.units.raid25.health.orientation = 'VERTICAL';
-
-			E.db.unitframe.units.raid40.healPrediction = true;
-			E.db.unitframe.units.raid40.health.orientation = 'VERTICAL';
-		end
-
-		if not E.db.movers then E.db.movers = {}; end
-		if E.db.lowresolutionset then
-			E.db.movers.ElvUF_PlayerMover = "BOTTOMElvUIParentBOTTOM-305242"
-			E.db.movers.ElvUF_TargetMover = "BOTTOMElvUIParentBOTTOM305242"
-			E.db.movers.ElvUF_Raid40Mover = "BOTTOMElvUIParentBOTTOM080"
-			E.db.movers.ElvUF_Raid25Mover = "BOTTOMElvUIParentBOTTOM080"
-			E.db.movers.ElvUF_Raid10Mover = "BOTTOMElvUIParentBOTTOM080"
-			E.db.movers.ElvUF_TargetTargetMover = "BOTTOMElvUIParentBOTTOM305187"
-			E.db.movers.ElvUF_PartyMover = "BOTTOMElvUIParentBOTTOM0104"
-			E.db.movers.ElvUF_PetMover = "BOTTOMElvUIParentBOTTOM-305187"
-			E.db.movers.ElvUF_FocusMover = "BOTTOMElvUIParentBOTTOM310432"
-
-		else
-			E.db.movers.ElvUF_PlayerMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT464242"
-			E.db.movers.ElvUF_TargetMover = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-464242"
-			E.db.movers.ElvUF_Raid40Mover = "BOTTOMElvUIParentBOTTOM050"
-			E.db.movers.ElvUF_Raid25Mover = "BOTTOMElvUIParentBOTTOM050"
-			E.db.movers.ElvUF_Raid10Mover = "BOTTOMElvUIParentBOTTOM050"
-			E.db.movers.ElvUF_TargetTargetMover = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-464151"
-			E.db.movers.ElvUF_PartyMover = "BOTTOMElvUIParentBOTTOM074"
-			E.db.movers.ElvUF_PetMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT464151"
-			E.db.movers.ElvUF_FocusMover = "BOTTOMElvUIParentBOTTOM280332"
-		end
-	elseif E.db.lowresolutionset then
-		if not E.db.movers then E.db.movers = {}; end
-		E.db.movers.ElvUF_PlayerMover = "BOTTOMElvUIParentBOTTOM-106135"
-		E.db.movers.ElvUF_TargetMover = "BOTTOMElvUIParentBOTTOM106135"
-		E.db.movers.ElvUF_TargetTargetMover = "BOTTOMElvUIParentBOTTOM10680"
-		E.db.movers.ElvUF_PetMover = "BOTTOMElvUIParentBOTTOM-10680"
-		E.db.movers.ElvUF_FocusMover = "BOTTOMElvUIParentBOTTOM310332"
-	else
-		if not noDataReset then
-			E:ResetMovers('')
-		end
-	end
-
-	if E.db.lowresolutionset and not noDataReset then
-		E.db.unitframe.units.player.width = 200;
-		E.db.unitframe.units.player.castbar.width = 200;
-		E.db.unitframe.units.player.classbar.fill = 'fill';
-
-		E.db.unitframe.units.target.width = 200;
-		E.db.unitframe.units.target.castbar.width = 200;
-
-		E.db.unitframe.units.pet.power.enable = false;
-		E.db.unitframe.units.pet.width = 200;
-		E.db.unitframe.units.pet.height = 26;
-
-		E.db.unitframe.units.targettarget.debuffs.enable = false;
-		E.db.unitframe.units.targettarget.power.enable = false;
-		E.db.unitframe.units.targettarget.width = 200;
-		E.db.unitframe.units.targettarget.height = 26;
-
-		E.db.unitframe.units.boss.width = 200;
-		E.db.unitframe.units.boss.castbar.width = 200;
-		E.db.unitframe.units.arena.width = 200;
-		E.db.unitframe.units.arena.castbar.width = 200;
-	end
-
-	if not E.db.lowresolutionset and (layout == 'dpsCaster' or (layout == 'dpsMelee' and E.myclass == 'HUNTER')) then
-		if not E.db.movers then E.db.movers = {}; end
-		E.db.movers.ElvUF_PlayerCastbarMover = "BOTTOMElvUIParentBOTTOM0180"
-	--[[elseif not E.db.lowresolutionset and layout == 'tank' then --Not sure if i want to keep this.
-		if not E.db.movers then E.db.movers = {}; end
-		E.db.movers.ElvUF_TargetCastbarMover = "BOTTOMElvUIParentBOTTOM0180"]]
-	end
-
-	--Datatexts
-	if not noDataReset then
-		E:CopyTable(E.db.datatexts.panels, P.datatexts.panels)
-		if layout == 'tank' then
-			E.db.datatexts.panels.LeftChatDataPanel.left = 'Armor';
-			E.db.datatexts.panels.LeftChatDataPanel.right = 'Avoidance';
-		elseif layout == 'healer' or layout == 'dpsCaster' then
-			E.db.datatexts.panels.LeftChatDataPanel.left = 'Spell/Heal Power';
-			E.db.datatexts.panels.LeftChatDataPanel.right = 'Haste';
-		else
-			E.db.datatexts.panels.LeftChatDataPanel.left = 'Attack Power';
-			E.db.datatexts.panels.LeftChatDataPanel.right = 'Crit Chance';
-		end
-
-		if InstallStepComplete then
-			InstallStepComplete.message = L["Layout Set"]
-			InstallStepComplete:Show()
-		end
-	end
-
-	E.db.layoutSet = layout
-
-	if not noDataReset and E.db.theme then
-		E:SetupTheme(E.db.theme, true)
-	end
-
-	E:UpdateAll(true)
-	local DT = E:GetModule('DataTexts')
-	DT:LoadDataTexts()
-end
-
-
-local function SetupAuras(style)
-	E:CopyTable(E.db.unitframe.units.player.buffs, P.unitframe.units.player.buffs)
-	E:CopyTable(E.db.unitframe.units.player.debuffs, P.unitframe.units.player.debuffs)
-	E:CopyTable(E.db.unitframe.units.player.aurabar, P.unitframe.units.player.aurabar)
-
-	E:CopyTable(E.db.unitframe.units.target.buffs, P.unitframe.units.target.buffs)
-	E:CopyTable(E.db.unitframe.units.target.debuffs, P.unitframe.units.target.debuffs)
-	E:CopyTable(E.db.unitframe.units.target.aurabar, P.unitframe.units.target.aurabar)
-	E.db.unitframe.units.target.smartAuraDisplay = P.unitframe.units.target.smartAuraDisplay
-
-	E:CopyTable(E.db.unitframe.units.focus.buffs, P.unitframe.units.focus.buffs)
-	E:CopyTable(E.db.unitframe.units.focus.debuffs, P.unitframe.units.focus.debuffs)
-	E:CopyTable(E.db.unitframe.units.focus.aurabar, P.unitframe.units.focus.aurabar)
-	E.db.unitframe.units.focus.smartAuraDisplay = P.unitframe.units.focus.smartAuraDisplay
-
-	if not style then
-		--PLAYER
-		E.db.unitframe.units.player.buffs.enable = true;
-		E.db.unitframe.units.player.buffs.attachTo = 'FRAME';
-		E.db.unitframe.units.player.buffs.noDuration = 'NONE';
-
-		E.db.unitframe.units.player.debuffs.attachTo = 'BUFFS';
-
-		E.db.unitframe.units.player.aurabar.enable = false;
-
-		--TARGET
-		E.db.unitframe.units.target.smartAuraDisplay = 'DISABLED';
-		E.db.unitframe.units.target.debuffs.enable = true;
-		E.db.unitframe.units.target.aurabar.enable = false;
-	elseif style == 'classic' then
-		--seriosly is this fucking hard??
-		E.db.unitframe.units.target.smartAuraDisplay = 'DISABLED';
-		E.db.unitframe.units.target.buffs.playerOnly = 'NONE';
-		E.db.unitframe.units.target.debuffs.enable = true;
-		E.db.unitframe.units.target.aurabar.attachTo = 'DEBUFFS';
-	end
-
-	E:GetModule('UnitFrames'):Update_AllFrames()
-	if InstallStepComplete then
-		InstallStepComplete.message = L["Auras Set"]
-		InstallStepComplete:Show()
-	end
-end
-
-
-function E:DarthSetup() --The function to switch from classic ElvUI settings to Darth's
-	InstallStepComplete.message = L["Darth's Defaults Set"]
-	InstallStepComplete:Show()
-	if not E.db.movers then E.db.movers = {}; end
-
-	layout = E.db.layoutSet --To know if some sort of layout was choosed before
-
-	--General options--
-	E.db.general.stickyFrames = false
-	E.db.general.autoRepair = "PLAYER"
-	E.db.general.vendorGrays = true
-	E.db.general.fontsize = 10
-	E.db.general.minimap.locationText = 'SHOW'
-	E.db.general.experience.textFormat = 'CURMAX'
-	E.db.general.experience.textSize = 10
-	E.db.general.reputation.textFormat = 'CURMAX'
-	E.db.general.reputation.textSize = 10
-	E.db.general.threat.enable = false
-	E.db.general.totems.spacing = 2
-	E.db.general.totems.growthDirection = "HORIZONTAL"
-	E.db.general.totems.size = 24
-
-	--Bags--
-	E.db.bags.bagSize = 25
-	E.db.bags.bankSize = 25
-	E.db.bags.sortInverted = false
-	E.db.bags.alignToChat = false
-	E.db.bags.bagWidth = 633
-	E.db.bags.bankWidth = 633
-	E.db.bags.yOffset = 225
-	E.db.bags.currencyFormat = "ICON"
-	E.db.bags.growthDirection = "HORIZONTAL"
-
-	--NamePlate--
-	E.db.nameplate.healthtext = 'CURRENT_PERCENT'
-	E.db.nameplate.lowHealthWarning = 'NONE'
-	E.db.nameplate.lowHealthWarningThreshold = .20
-
-	--Auras--
-	E.db.auras.font = "ElvUI Font"
-	E.db.auras.fontOutline = "OUTLINE"
-	E.db.auras.wrapAfter = 18
-
-	--Chat--
-	E.db.chat.editboxhistory = 10
-	E.db.chat.emotionIcons = false
-	E.db.chat.whisperSound = 'None'
-	E.db.chat.panelHeight = 227
-	if E.db.lowresolutionset then
-		E.db.chat.panelWidth = 400
-	else
-		E.db.chat.panelWidth = 444
-	end
-	E.db.sle.chat.fade = true
-
-	--Datatexts--
-	E.db.datatexts.font = "ElvUI Pixel"
-	E.db.datatexts.fontSize = 11
-	E.db.datatexts.time24 = true
-	E.db.sle.datatext.top.enabled = true
-	E.db.sle.datatext.bottom.enabled = true
-	if E.db.lowresolutionset then
-		E.db.sle.datatext.dp1.enabled = false
-		E.db.sle.datatext.dp2.enabled = false
-		E.db.sle.datatext.dp3.enabled = false
-		E.db.sle.datatext.dp4.enabled = false
-		E.db.sle.datatext.dp5.enabled = false
-		E.db.sle.datatext.dp6.enabled = false
-		E.db.sle.datatext.chatleft.width = 384
-		E.db.sle.datatext.chatright.width = 384
-		E.db.sle.datatext.bottom.width = E.screenwidth/3 + 52
-	else
-		E.db.sle.datatext.dp1.enabled = true
-		E.db.sle.datatext.dp2.enabled = true
-		E.db.sle.datatext.dp3.enabled = true
-		E.db.sle.datatext.dp4.enabled = true
-		E.db.sle.datatext.dp5.enabled = true
-		E.db.sle.datatext.dp6.enabled = true
-		E.db.sle.datatext.chatleft.width = 428
-		E.db.sle.datatext.chatright.width = 428
-		E.db.sle.datatext.bottom.width = E.screenwidth/10 - 4
-	end
-
-	if E.db.lowresolutionset then
-		E.db.datatexts.panels.LeftChatDataPanel.left = 'Bags';
-		E.db.datatexts.panels.LeftChatDataPanel.middle = 'Gold';
-		E.db.datatexts.panels.LeftChatDataPanel.right = 'Durability';
-	else
-		E.db.datatexts.panels.LeftChatDataPanel.right = 'Friends';
-		E.db.datatexts.panels.LeftChatDataPanel.left = 'Call to Arms';
-		E.db.datatexts.panels.LeftChatDataPanel.middle = 'Durability';
-	end
-	E.db.datatexts.panels.LeftMiniPanel = 'Time';
-	E.db.datatexts.panels.RightMiniPanel = 'Guild';
-
-	if layout == 'tank' then
-		E.db.datatexts.panels.DP_6.left = 'Avoidance';
-		E.db.datatexts.panels.DP_6.middle = 'Vengeance';
-		E.db.datatexts.panels.DP_6.right = 'Expertise';
-		if E.db.lowresolutionset then
-			E.db.datatexts.panels.RightChatDataPanel.left = 'Avoidance';
-			E.db.datatexts.panels.RightChatDataPanel.middle = 'Vengeance';
-			E.db.datatexts.panels.RightChatDataPanel.right = 'Expertise';
-		else
-			E.db.datatexts.panels.RightChatDataPanel.left = 'Hit Rating';
-			E.db.datatexts.panels.RightChatDataPanel.middle = 'Mastery';
-			E.db.datatexts.panels.RightChatDataPanel.right = 'Spec Switch';
-		end
-		E.db.datatexts.panels.DP_5.right = 'Armor';
-	elseif layout == 'healer' then
-		E.db.datatexts.panels.DP_6.left = 'Spell/Heal Power';
-		E.db.datatexts.panels.DP_6.middle = 'Haste';
-		E.db.datatexts.panels.DP_6.right = 'Crit Chance';
-		if E.db.lowresolutionset then
-			E.db.datatexts.panels.RightChatDataPanel.left = 'Spell/Heal Power';
-			E.db.datatexts.panels.RightChatDataPanel.middle = 'Crit Chance';
-			E.db.datatexts.panels.RightChatDataPanel.right = 'Mana Regen';
-		else
-			E.db.datatexts.panels.RightChatDataPanel.left = 'Mana Regen';
-			E.db.datatexts.panels.RightChatDataPanel.middle = 'Mastery';
-			E.db.datatexts.panels.RightChatDataPanel.right = 'Spec Switch';
-		end
-		E.db.datatexts.panels.DP_5.right = 'Armor';
-	elseif layout == 'dpsCaster' then
-		E.db.datatexts.panels.DP_6.left = 'Spell/Heal Power';
-		E.db.datatexts.panels.DP_6.middle = 'Haste';
-		E.db.datatexts.panels.DP_6.right = 'Crit Chance';
-		if E.db.lowresolutionset then
-			E.db.datatexts.panels.RightChatDataPanel.left = 'Spell/Heal Power';
-			E.db.datatexts.panels.RightChatDataPanel.middle = 'Haste';
-			E.db.datatexts.panels.RightChatDataPanel.right = 'Crit Chance';
-		else
-			E.db.datatexts.panels.RightChatDataPanel.left = 'Hit Rating';
-			E.db.datatexts.panels.RightChatDataPanel.middle = 'Mastery';
-			E.db.datatexts.panels.RightChatDataPanel.right = 'Spec Switch';
-		end
-		E.db.datatexts.panels.DP_5.right = 'Armor';
-	else
-		E.db.datatexts.panels.DP_6.left = 'Attack Power';
-		E.db.datatexts.panels.DP_6.middle = 'Haste';
-		E.db.datatexts.panels.DP_6.right = 'Crit Chance';
-		if E.db.lowresolutionset then
-			E.db.datatexts.panels.RightChatDataPanel.left = 'Attack Power';
-			E.db.datatexts.panels.RightChatDataPanel.middle = 'Haste';
-			E.db.datatexts.panels.RightChatDataPanel.right = 'Crit Chance';
-		else
-			E.db.datatexts.panels.RightChatDataPanel.left = 'Hit Rating';
-			E.db.datatexts.panels.RightChatDataPanel.middle = 'Mastery';
-			E.db.datatexts.panels.RightChatDataPanel.right = 'Spec Switch';
-		end
-		E.db.datatexts.panels.DP_5.right = 'Expertise';
-	end
-
-	--Unitframes--
-	E.db.unitframe.smoothbars = false
-	E.db.unitframe.font = "ElvUI Font"
-	E.db.unitframe.fontsize = 9
-	E.db.unitframe.fontOutline = 'OUTLINE'
-	E.db.unitframe.colors.castColor = {
-								["b"] = 0.3098039215686275,
-								["g"] = 0.792156862745098,
-								["r"] = 0.8274509803921568,
-							}
-	UF:Update_AllFrames()
-	if layout == "healer" then
-		E.db.unitframe.debuffHighlighting = true
-	else
-		E.db.unitframe.debuffHighlighting = false
-	end
-	E.db.unitframe.smartRaidFilter = false
-	E.db.unitframe.colors.healthclass = true
-	E.db.unitframe.colors.colorhealthbyvalue = false
-		--Setting player frame
-		E.db.unitframe.units.player.width = 200
-		if layout == "healer" then
-			E.db.unitframe.units.player.lowmana = 30;
-		else
-			E.db.unitframe.units.player.lowmana = 0;
-		end
-		E.db.unitframe.units.player.health.position = 'BOTTOMRIGHT';
-		E.db.unitframe.units.player.health.text_format = "[healthcolor][health:current-percent:sl]"
-		E.db.unitframe.units.player.power.text_format = "[powercolor][power:current:sl]";
-		E.db.unitframe.units.player.name.text_format = "[name:medium]";
-		E.db.unitframe.units.player.name.position = 'TOPLEFT';
-		E.db.unitframe.units.player.pvp.text_format = "||cFFB04F4F[pvptimer]||r"
-		E.db.unitframe.units.player.pvp.position = "BOTTOMLEFT"
-		E.db.unitframe.units.player.portrait.enable = true
-		E.db.unitframe.units.player.portrait.camDistanceScale = 1.5;
-		E.db.unitframe.units.player.debuffs.enable = false;
-		E.db.unitframe.units.player.castbar.format = 'CURRENTMAX';
-		E.db.unitframe.units.player.castbar.width = 237
-		E.db.unitframe.units.player.classbar.fill = 'fill'
-		E.db.unitframe.units.player.classbar.height = 8
-		E.db.unitframe.units.player.aurabar.enable = false
-		--Setting target frame
-		E.db.unitframe.units.target.width = 200
-		E.db.unitframe.units.target.smartAuraDisplay = "DISABLED"
-		E.db.unitframe.units.target.hideonnpc = false;
-		E.db.unitframe.units.target.health.position = 'BOTTOMRIGHT';
-		E.db.unitframe.units.target.power.position = 'RIGHT';
-		E.db.unitframe.units.target.power.hideonnpc = false;
-		E.db.unitframe.units.target.power.text_format = "[powercolor][power:current:sl]"
-		E.db.unitframe.units.target.name.text_format = "[name:medium] [smartlevel] [shortclassification]";
-		E.db.unitframe.units.target.name.position = 'TOPLEFT';
-		E.db.unitframe.units.target.portrait.enable = true
-		E.db.unitframe.units.target.portrait.camDistanceScale = 1.5;
-		E.db.unitframe.units.target.buffs.perrow = 9;
-		E.db.unitframe.units.target.buffs.numrows = 2;
-		E.db.unitframe.units.target.buffs.playerOnly = "NONE";
-		E.db.unitframe.units.target.buffs.noDuration = "NONE";
-		E.db.unitframe.units.target.buffs.anchorPoint = 'TOPLEFT';
-		E.db.unitframe.units.target.buffs.clickThrough = false
-		E.db.unitframe.units.target.buffs.noConsolidated = "NONE"
-		E.db.unitframe.units.target.debuffs.perrow = 9;
-		E.db.unitframe.units.target.debuffs.useBlacklis = "NONE";
-		E.db.unitframe.units.target.debuffs.playerOnly = "NONE";
-		E.db.unitframe.units.target.debuffs.enable = true
-		E.db.unitframe.units.target.debuffs.clickThrough = false
-		E.db.unitframe.units.target.castbar.format = 'CURRENTMAX';
-		if layout == "healer" then
-			E.db.unitframe.units.target.castbar.width = 237
-		else
-			E.db.unitframe.units.target.castbar.width = 200
-		end
-		E.db.unitframe.units.target.aurabar.enable = false
-		--Target of Target
-		E.db.unitframe.units.targettarget.height = 26
-		if layout == "healer" then
-			E.db.unitframe.units.targettarget.width = 115
-		else
-			E.db.unitframe.units.targettarget.width = 120
-		end
-		E.db.unitframe.units.targettarget.name.text_format = "[name:medium]"
-		E.db.unitframe.units.targettarget.debuffs.enable = false
-		--Focus
-		E.db.unitframe.units.focus.height = 42
-		E.db.unitframe.units.focus.width = 179
-		E.db.unitframe.units.focus.health.position = 'BOTTOMRIGHT'
-		E.db.unitframe.units.focus.health.text_format = "[healthcolor][health:current-percent:sl]"
-		E.db.unitframe.units.focus.power.text_format = "[powercolor][power:current:sl]"
-		E.db.unitframe.units.focus.power.position = "RIGHT"
-		E.db.unitframe.units.focus.name.text_format = "[name:medium]"
-		E.db.unitframe.units.focus.name.position = 'TOPLEFT'
-		E.db.unitframe.units.focus.debuffs.perrow = 8
-		E.db.unitframe.units.focus.debuffs.anchorPoint = "TOPLEFT"
-		E.db.unitframe.units.focus.castbar.format = 'CURRENTMAX'
-		E.db.unitframe.units.focus.castbar.width = 179
-		--Focus Target
-		E.db.unitframe.units.focustarget.name.text_format = "[name:medium]"
-		E.db.unitframe.units.focustarget.enable = true
-		E.db.unitframe.units.focustarget.height = 34
-		E.db.unitframe.units.focustarget.width = 179
-		--Pet
-		E.db.unitframe.units.pet.name.text_format = "[name:medium]"
-		if layout == "healer" then
-			E.db.unitframe.units.pet.width = 115
-		else
-			E.db.unitframe.units.pet.width = 128
-		end
-		--Pet Target
-		E.db.unitframe.units.pettarget.name.text_format = "[name:medium]"
-		E.db.unitframe.units.pettarget.enable = true
-		if layout == "healer" then
-			E.db.unitframe.units.pettarget.width = 115
-		else
-			E.db.unitframe.units.pettarget.width = 119
-		end
-		--Party
-		if layout == "healer" then
-			E.db.unitframe.units.party.point = "LEFT"
-			E.db.unitframe.units.party.xOffset = 5
-			E.db.unitframe.units.party.debuffs.perrow = 3
-			E.db.unitframe.units.party.debuffs.anchorPoint = "BOTTOMLEFT"
-			E.db.unitframe.units.party.debuffs.useFilter = "Blacklist"
-			E.db.unitframe.units.party.debuffs.initialAnchor = "TOPLEFT"
-			E.db.unitframe.units.party.roleIcon.position = "RIGHT"
-			E.db.unitframe.units.party.width = 80
-			E.db.unitframe.units.party.height = 52
-			E.db.unitframe.units.party.healPrediction = true
-			E.db.unitframe.units.party.health.text_format = "[healthcolor][health:deficit]"
-			E.db.unitframe.units.party.health.position = "CENTER"
-			E.db.unitframe.units.party.health.frequentUpdates = true
-			E.db.unitframe.units.party.health.orientation = "VERTICAL"
-		else
-			E.db.unitframe.units.party.debuffs.perrow = 4
-			E.db.unitframe.units.party.roleIcon.position = "TOPRIGHT"
-			E.db.unitframe.units.party.health.position = "BOTTOMLEFT"
-		end
-		E.db.unitframe.units.party.debuffs.sizeOverride = 26
-		E.db.unitframe.units.party.buffIndicator.colorIcons = false
-		E.db.unitframe.units.party.power.height = 8
-		E.db.unitframe.units.party.power.text_format = ""
-		E.db.unitframe.units.party.name.position = "TOP"
-		E.db.unitframe.units.party.name.text_format = "[name:medium] [difficultycolor][smartlevel]"
-		--Raid 10
-		if layout == "healer" then
-			E.db.unitframe.units.raid10.health.frequentUpdates = true
-			E.db.unitframe.units.raid10.health.text_format = "[healthcolor][health:dificit]"
-			E.db.unitframe.units.raid10.health.orientation = "VERTICAL"
-			E.db.unitframe.units.raid10.health.position = "CENTER"
-		else
-			E.db.unitframe.units.raid10.health.text_format = "[healthcolor][health:current]"
-			E.db.unitframe.units.raid10.columnAnchorPoint = "LEFT"
-			E.db.unitframe.units.raid10.point = "TOP"
-		end
-		E.db.unitframe.units.raid10.name.text_format = "[name:medium]"
-		E.db.unitframe.units.raid10.buffIndicator.colorIcons = false
-		E.db.unitframe.units.raid10.rdebuffs.size = 22
-		E.db.unitframe.units.raid10.power.height = 8
-		E.db.unitframe.units.raid10.power.text_format = ""
-		E.db.unitframe.units.raid10.health.position = "BOTTOMLEFT"
-		E.db.unitframe.units.raid10.health.text_format = "[healthcolor][health:current]"
-		--Raid 25
-		if layout == "healer" then
-			E.db.unitframe.units.raid25.health.text_format = "[healthcolor][health:deficit]"
-			E.db.unitframe.units.raid25.health.frequentUpdates = true
-			E.db.unitframe.units.raid25.health.orientation = "VERTICAL"
-			E.db.unitframe.units.raid25.health.position = "CENTER"
-		else
-			E.db.unitframe.units.raid25.point = "TOP"
-			E.db.unitframe.units.raid25.columnAnchorPoint = "LEFT"
-			E.db.unitframe.units.raid25.health.text_format = ""
-		end
-		E.db.unitframe.units.raid25.buffIndicator.colorIcons = false
-		E.db.unitframe.units.raid25.name.text_format = "[name:medium]"
-		E.db.unitframe.units.raid25.rdebuffs.size = 22
-		E.db.unitframe.units.raid25.power.height = 8
-		E.db.unitframe.units.raid25.power.text_format = ""
-		--Raid 40
-		if layout == "healer" then
-			E.db.unitframe.units.raid40.health.frequentUpdates = true
-			E.db.unitframe.units.raid40.health.text_format = ""
-			E.db.unitframe.units.raid40.health.orientation = "VERTICAL"
-		else
-			E.db.unitframe.units.raid40.health.text_format = ""
-		end
-		E.db.unitframe.units.raid40.name.text_format = "[name:short]"
-		E.db.unitframe.units.raid40.buffIndicator.colorIcons = false
-
-		--Tank
-		if layout == "healer" then
-			E.db.unitframe.units.tank.enable = true
-			E.db.unitframe.units.tank.targetsGroup.enable = false
-		else
-			E.db.unitframe.units.tank.enable = false
-		end
-		--Assist
-		E.db.unitframe.units.assist.enable = false
-
-		--Arena
-		E.db.unitframe.units.arena.width = 200
-		E.db.unitframe.units.arena.height = 40
-		E.db.unitframe.units.arena.growthDirection = 'DOWN'
-		E.db.unitframe.units.arena.health.position = 'BOTTOMRIGHT'
-		E.db.unitframe.units.arena.health.text_format = "[healthcolor][health:current-percent:sl]"
-		E.db.unitframe.units.arena.power.text_format = "[powercolor][power:current:sl]"
-		E.db.unitframe.units.arena.name.text_format = "[name:long]"
-		E.db.unitframe.units.arena.name.position = 'TOPLEFT'
-		E.db.unitframe.units.arena.buffs.enable = false
-		E.db.unitframe.units.arena.debuffs.enable = false
-		E.db.unitframe.units.arena.castbar.format = 'CURRENTMAX'
-		E.db.unitframe.units.arena.castbar.height = 15
-		E.db.unitframe.units.arena.castbar.width = 200
-		E.db.unitframe.units.arena.castbar.color = {
-								["r"] = 0.8274509803921568,
-								["g"] = 0.792156862745098,
-								["b"] = 0.3098039215686275,
-							}
-		--Boss
-		E.db.unitframe.units.boss.width = 200
-		E.db.unitframe.units.boss.height = 40
-		E.db.unitframe.units.boss.growthDirection = 'DOWN'
-		E.db.unitframe.units.boss.health.position = 'BOTTOMRIGHT'
-		E.db.unitframe.units.boss.health.text_format = "[healthcolor][health:current-percent]"
-		E.db.unitframe.units.boss.power.height = 10
-		E.db.unitframe.units.boss.power.text_format = "[powercolor][power:current:sl]"
-		E.db.unitframe.units.boss.name.text_format = "[name:long]"
-		E.db.unitframe.units.boss.name.position = 'TOPLEFT'
-		E.db.unitframe.units.boss.buffs.enable = false
-		E.db.unitframe.units.boss.debuffs.enable = false
-		E.db.unitframe.units.boss.castbar.format = 'CURRENTMAX'
-		E.db.unitframe.units.boss.castbar.height = 15
-		E.db.unitframe.units.boss.castbar.width = 200
-		E.db.unitframe.units.boss.castbar.color = {
-								["r"] = 0.8274509803921568,
-								["g"] = 0.792156862745098,
-								["b"] = 0.3098039215686275,
-							}
-		--Power text
-		E.db.sle.powtext = true
-
-	--Actionbars
-	E.db.actionbar.hotkeytext = false
-	E.db.actionbar.keyDown = false
-	E.db.actionbar.bar1.point = "TOPLEFT"
-	E.db.actionbar.bar1.buttonsPerRow = 3
-	E.db.actionbar.bar1.buttonsize = 26
-	E.db.actionbar.bar2.enabled = true
-	E.db.actionbar.bar2.point = "TOPLEFT"
-	E.db.actionbar.bar2.backdrop = true
-	E.db.actionbar.bar2.buttonsPerRow = 3
-	E.db.actionbar.bar2.buttonsize = 26
-	E.db.actionbar.bar2.visibility = "[petbattle] hide; show"
-	E.db.actionbar.bar3.point = "TOPLEFT"
-	E.db.actionbar.bar3.buttons = 12
-	E.db.actionbar.bar3.buttonsPerRow = 3
-	E.db.actionbar.bar3.visibility = "[petbattle] hide; show"
-	E.db.actionbar.bar3.buttonsize = 26
-	E.db.actionbar.bar4.enabled = false
-	E.db.actionbar.bar5.enabled = false
-	E.db.actionbar.microbar.enabled = true
-	E.db.actionbar.microbar.buttonsPerRow = 2
-	E.db.actionbar.microbar.alpha = 0.2
-	E.db.actionbar.stanceBar.buttonspacing = 2
-	E.db.actionbar.stanceBar.backdrop = true
-	E.db.actionbar.stanceBar.buttonsPerRow = 1
-	E.db.actionbar.stanceBar.buttonsize = 22
-	E.db.actionbar.barPet.point = "TOPLEFT"
-	E.db.actionbar.barPet.buttonspacing = 1
-	E.db.actionbar.barPet.backdrop = false
-	E.db.actionbar.barPet.buttonsPerRow = 5
-	E.db.actionbar.barPet.buttonsize = 20
-
-	--Raid marks--
-	E.db.sle.marks.growth = "LEFT"
-
-	--Background Frames--
-	E.db.sle.backgrounds.right.enabled = true
-	E.db.sle.backgrounds.right.pethide = false
-	E.db.sle.backgrounds.right.xoffset = 70
-	E.db.sle.backgrounds.left.enabled = true
-	E.db.sle.backgrounds.left.pethide = false
-	E.db.sle.backgrounds.left.xoffset = -70
-
-	--Raid utility--
-	E.db.sle.raidutil.ypos = 1050
-
-	--Exp/Rep Bars--
-	E.db.sle.exprep.explong = true
-	E.db.sle.exprep.replong = true
-
-	--Combat icon--
-	E.db.sle.combatico.pos = 'TOPRIGHT'
-
-	--UI buttons--
-	E.db.sle.uibuttons.enable = true
-	E.db.sle.uibuttons.size = 14
-	E.db.sle.uibuttons.position = "uib_hor"
-
-	--Moving stuff--
-	if layout == "healer" then
-		E.db.movers.PetAB = "BOTTOMLEFTUIParentBOTTOMLEFT633141"
-		E.db.movers.ElvUF_Raid10Mover = "BOTTOMRIGHTUIParentBOTTOMRIGHT-754215"
-		E.db.movers.ElvUF_Raid25Mover = "BOTTOMRIGHTUIParentBOTTOMRIGHT-754215"
-		E.db.movers.ExperienceBarMover = "TOPLEFTUIParentTOPLEFT722-21"
-		E.db.movers.ElvUF_TargetMover = "BOTTOMRIGHTUIParentBOTTOMRIGHT-549249"
-		E.db.movers.ElvUF_Raid40Mover = "BOTTOMRIGHTUIParentBOTTOMRIGHT-754215"
-		E.db.movers.ElvUF_PetMover = "BOTTOMLEFTUIParentBOTTOMLEFT634212"
-		E.db.movers.ElvUF_TargetTargetMover = "BOTTOMRIGHTUIParentBOTTOMRIGHT-634222"
-		E.db.movers.ElvUF_PetTargetMover = "BOTTOMLEFTUIParentBOTTOMLEFT634185"
-		E.db.movers.ElvUF_PlayerCastbarMover = "BOTTOMLEFTUIParentBOTTOMLEFT841169"
-		E.db.movers.ElvUF_TankMover = "BOTTOMLEFTUIParentBOTTOMLEFT428249"
-		E.db.movers.ElvUF_PlayerMover = "BOTTOMLEFTUIParentBOTTOMLEFT549249"
-		E.db.movers.ElvUF_PartyMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT750251"
-		E.db.movers.ElvUF_TargetCastbarMover = "BOTTOMLEFTUIParentBOTTOMLEFT841192"
-		E.db.movers.TotemBarMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT547302"
-	else
-		E.db.movers.ElvUF_PlayerCastbarMover = "BOTTOMRIGHTUIParentBOTTOMRIGHT-841212"
-		E.db.movers.ElvUF_Raid10Mover = "BOTTOMLEFTUIParentBOTTOMLEFT4249"
-		E.db.movers.ElvUF_PetTargetMover = "BOTTOMLEFTUIParentBOTTOMLEFT835169"
-		E.db.movers.ElvUF_Raid25Mover = "BOTTOMLEFTUIParentBOTTOMLEFT4249"
-		E.db.movers.ElvUF_TargetMover = "BOTTOMRIGHTUIParentBOTTOMRIGHT-634194"
-		E.db.movers.ElvUF_Raid40Mover = "BOTTOMLEFTUIParentBOTTOMLEFT4249"
-		E.db.movers.PetAB = "BOTTOMLEFTUIParentBOTTOMLEFT633114"
-		E.db.movers.ElvUF_TargetCastbarMover = "BOTTOMRIGHTUIParentBOTTOMRIGHT-634171"
-		E.db.movers.ElvUF_PlayerMover = "BOTTOMLEFTUIParentBOTTOMLEFT634194"
-		E.db.movers.ElvUF_PetMover = "BOTTOMLEFTUIParentBOTTOMLEFT634157"
-		E.db.movers.ElvUF_PartyMover = "BOTTOMLEFTUIParentBOTTOMLEFT4249"
-		E.db.movers.ElvUF_TargetTargetMover = "BOTTOMRIGHTUIParentBOTTOMRIGHT-835169"
-		E.db.movers.TotemBarMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT632247"
-	end
-	E.db.movers.ElvAB_1 = "BOTTOMLEFTUIParentBOTTOMLEFT91321"
-	E.db.movers.ElvAB_2 = "BOTTOMRIGHTUIParentBOTTOMRIGHT-81821"
-	E.db.movers.ElvAB_4 = "TOPRIGHTUIParentTOPRIGHT-311-319"
-	E.db.movers.ElvAB_3 = "BOTTOMLEFTUIParentBOTTOMLEFT81821"
-	E.db.movers.ElvAB_5 = "BOTTOMLEFTUIParentBOTTOMLEFT549479"
-	E.db.movers.MinimapMover = "TOPRIGHTUIParentTOPRIGHT0-21"
-	E.db.movers.UIBFrameMover = "BOTTOMLEFTUIParentBOTTOMLEFT63421"
-	E.db.movers.WatchFrameMover = "TOPRIGHTUIParentTOPRIGHT-237-231"
-	E.db.movers.BossHeaderMover = "TOPRIGHTUIParentTOPRIGHT0-233"
-	E.db.movers.ArenaHeaderMover = "TOPRIGHTUIParentTOPRIGHT0-233"
-	E.db.movers.PetBattleABMover = "BOTTOMLEFTUIParentBOTTOMLEFT76921"
-	E.db.movers.ShiftAB = "BOTTOMLEFTUIParentBOTTOMLEFT79121"
-	E.db.movers.ExperienceBarMover = "TOPElvUIParentTOP0-32"
-	E.db.movers.ReputationBarMover = "TOPElvUIParentTOP0-21"
-	E.db.movers.MarkMover = "BOTTOMLEFTUIParentBOTTOMLEFT882146"
-	E.db.movers.MicrobarMover = "BOTTOMRIGHTUIParentBOTTOMRIGHT0248"
-	E.db.movers.LootFrameMover = "TOPLEFTUIParentTOPLEFT60-360"
-	E.db.movers.AurasMover = "TOPRIGHTUIParentTOPRIGHT-214-21"
-	E.db.movers.BagsMover = "TOPLEFTUIParentTOPLEFT0-21"
-	E.db.movers.GMMover = "BOTTOMRIGHTUIParentBOTTOMRIGHT0456"
-	E.db.movers.BossButton = "BOTTOMLEFTUIParentBOTTOMLEFT66846"
-	E.db.movers.BNETMover = "BOTTOMRIGHTUIParentBOTTOMRIGHT0481"
-	E.db.movers.ElvUF_FocusMover = "BOTTOMRIGHTUIParentBOTTOMRIGHT-636103"
-	E.db.movers.ElvUF_FocusTargetMover = "BOTTOMRIGHTUIParentBOTTOMRIGHT-63634"
-	E.db.movers.VehicleSeatMover = "TOPLEFTElvUIParentTOPLEFT187-21"
-
-	E:UpdateAll(true)
-end
-
-function E:RepoocSetup() --The function to switch from classic ElvUI settings to Repooc's
-	InstallStepComplete.message = L["Repooc's Defaults Set"]
-	InstallStepComplete:Show()
-	if not E.db.movers then E.db.movers = {}; end
-	layout = E.db.layoutSet  --Pull which layout was selected if any.
-
---	P.sle.auras.castername = true
-	--General Options
-	E.db.general.autoRepair = "PLAYER"  --Checked
-	E.db.general.backdropcolor = {
-		["b"] = 0.2509803921568627,
-		["g"] = 0.2509803921568627,
-		["r"] = 0.2509803921568627,
-	}  --Checked
-	E.db.general.backdropfadecolor = {
-		["a"] = 0.3500000238418579,
-		["b"] = 0.2980392156862745,
-		["g"] = 0.2980392156862745,
-		["r"] = 0.2980392156862745,
-	}  --Checked
-	E.db.general.bordercolor = {
-		["b"] = 0,
-		["g"] = 0,
-		["r"] = 0,
-	}  --Checked
-	E.db.general.health = {
-	}  --Checked
-	E.db.general.health_backdrop = {
-	}  --Checked
-	E.db.general.interruptAnnounce = "RAID"  --Checked
-	E.db.general.stickyFrames = true  --Checked
-	E.db.general.tapped = {
-	}  --Checked
-	E.db.general.threat.enable = true  --Checked
-	E.db.general.totems.growthDirection = "HORIZONTAL"  --Checked
-	E.db.general.totems.size = 30  --Checked
-	E.db.general.valuecolor = {
-		["a"] = 1,
-		["b"] = 1,
-		["g"] = 1,
-		["r"] = 1,
-	}  --Checked
-	E.db.general.vendorGrays = true  --Checked
-	E.db.hideTutorial = 1  --Checked
-
-	--Bags
-	E.db.bags.bagCols = 13  --Checked
-	E.db.bags.yOffset = 208  --Checked
-
-	--Chat
-	E.db.sle.chat.fade = true  --Checked
-	E.db.chat.hyperlinkHover = false  --Checked
-	E.db.chat.font = "Accidental Presidency"  --Checked
-	E.db.chat.fontOutline = "OUTLINE"
-	E.db.chat.panelHeight = "209"  --Checked
-	E.db.chat.panelBackdropNameLeft = "Interface\\addons\\ElvUI_SLE\\textures\\chat_1.tga"  --Checked
-	E.db.chat.panelBackdropNameRight = "Interface\\addons\\ElvUI_SLE\\textures\\chat_1.tga"  --Checked
-	E.db.chat.panelWidth = 440  --Checked
-	E.db.chat.tabFont = "Morpheus"  --Checked
-	E.db.chat.tabFontOutline = "OUTLINE"  --Checked
-	E.db.chat.tabFontSize = 14  --Checked
-	E.db.scrollDownInterval = 30  --Checked
-
-	--LFR Lockout
-	E.db.datatexts.lfrshow = true  --Checked
-
-	--Raid utility
-	E.db.sle.raidutil.ypos = E.screenheight - 30  --Checked
-
-	--PvP & Combat Icon
-	E.db.sle.combatico.pos = 'TOP'  --Checked
-
-	--UIButtons
-	E.db.sle.uibuttons.enable = true  --Checked
-
-	--Nameplate
-	E.db.nameplate.healthtext = "CURRENT_MAX_PERCENT"  --Checked
-	--Actionbars
-	E.db.actionbar.font = "Accidental Presidency"  --Checked
-	E.db.actionbar.fontsize = 13  --Checked
-	E.db.actionbar.fontOutline = "OUTLINE"  --Checked
-	E.db.actionbar.hotkeytext = true  --Checked
-	E.db.actionbar.macrotext = true  --Checked
-	--Bar 1
-	E.db.actionbar.bar1.enabled = true  --Checked
-	E.db.actionbar.bar1.backdrop = true  --Checked
-	E.db.actionbar.bar1.buttons = 12  --Checked
-	E.db.actionbar.bar1.buttonsPerRow = 6  --Checked
-	--Bar 2
-	E.db.actionbar.bar2.enabled = true  --Checked
-	E.db.actionbar.bar2.backdrop = true  --Checked
-	E.db.actionbar.bar2.buttons = 12  --Checked
-	E.db.actionbar.bar2.buttonsPerRow = 6  --Checked
-	--Bar 3
-	E.db.actionbar.bar3.enabled = true  --Checked
-	E.db.actionbar.bar3.backdrop = false  --Checked
-	E.db.actionbar.bar3.buttons = 12  --Checked
-	E.db.actionbar.bar3.buttonsize = 20  --Checked
-	E.db.actionbar.bar3.buttonsPerRow = 2  --Checked
-	--Bar 4
-	E.db.actionbar.bar4.enabled = true  --Checked
-	E.db.actionbar.bar4.backdrop = true  --Checked
-	E.db.actionbar.bar4.buttons = 12  --Checked
-	E.db.actionbar.bar4.buttonsize = 25  --Checked
-	E.db.actionbar.bar4.buttonsPerRow = 1  --Checked
-	--Bar 5
-	E.db.actionbar.bar5.enabled = true  --Checked
-	E.db.actionbar.bar5.backdrop = false  --Checked
-	E.db.actionbar.bar5.buttons = 12  --Checked
-	E.db.actionbar.bar5.buttonsize = 20  --Checked
-	E.db.actionbar.bar5.buttonsPerRow = 2  --Checked
-	--Stance Bar
-	--E.db.actionbar.stanceBar.buttonsize = 31
-	--E.db.actionbar.stanceBar.buttonsPerRow = 1
-	--E.db.actionbar.stanceBar.buttonspacing = 5
-	--E.db.actionbar.stanceBar.backdrop = true
-	--Pet Bar
-	E.db.actionbar.barPet.buttonsize = 25  --Checked
-
-	--Datatext Panels Settings
-	E.db.datatexts.font = "Accidental Presidency"  --Checked
-	E.db.datatexts.fontOutline = "OUTLINE"  --Checked
-	E.db.datatexts.fontSize = 15  --Checked
-	E.db.sle.datatext.bottom.enabled = true  --Checked
-	E.db.sle.datatext.chatleft.width = 424 --Checked
-	E.db.sle.datatext.chatright.width = 424  --Checked
-	E.db.sle.datatext.dp1.enabled = false  --Checked
-	E.db.sle.datatext.dp2.enabled = false  --Checked
-	E.db.sle.datatext.dp3.enabled = false  --Checked
-	E.db.sle.datatext.dp4.enabled = false  --Checked
-	E.db.sle.datatext.dp5.enabled = true  --Checked
-	E.db.sle.datatext.dp5.width = 424  --Checked
-	E.db.sle.datatext.dp6.enabled = true  --Checked
-	E.db.sle.datatext.dp6.width = 424  --Checked
-	E.db.sle.datatext.top.enabled = false  --Checked
-
-	--Datatext Panels Presets
-	E.db.datatexts.panels['DP_1']['left'] = ""  --Checked
-	E.db.datatexts.panels['DP_1']['middle'] = ""  --Checked
-	E.db.datatexts.panels['DP_1']['righ'] = ""  --Checked
-	E.db.datatexts.panels['DP_2']['left'] = ""  --Checked
-	E.db.datatexts.panels['DP_2']['middle'] = ""  --Checked
-	E.db.datatexts.panels['DP_2']['right'] = ""  --Checked
-	E.db.datatexts.panels['DP_3']['left'] = ""  --Checked
-	E.db.datatexts.panels['DP_3']['middle'] = ""  --Checked
-	E.db.datatexts.panels['DP_3']['right'] = ""  --Checked
-	E.db.datatexts.panels['DP_4']['left'] = ""  --Checked
-	E.db.datatexts.panels['DP_4']['middle'] = ""  --Checked
-	E.db.datatexts.panels['DP_4']['right'] = ""  --Checked
-	E.db.datatexts.panels['DP_5']['left'] = ""  --Checked
-	E.db.datatexts.panels['DP_5']['middle'] = ""  --Checked
-	E.db.datatexts.panels['DP_5']['right'] = ""  --Checked
-	E.db.datatexts.panels['DP_6']['left'] = ""  --Checked
-	E.db.datatexts.panels['DP_6']['middle'] = ""  --Checked
-	E.db.datatexts.panels['DP_6']['right'] = "Bags"  --Checked
-	E.db.datatexts.panels['LeftChatDataPanel']['left'] = "BugSack"  --Checked
-	E.db.datatexts.panels['LeftChatDataPanel']['middle'] = "AtlasLoot"  --Checked
-	E.db.datatexts.panels['LeftChatDataPanel']['right'] = "Durability"  --Checked
-	E.db.datatexts.panels['RightChatDataPanel']['left'] = "WIM"  --Checked
-	E.db.datatexts.panels['RightChatDataPanel']['middle'] = "SocialState"  --Checked
-	E.db.datatexts.panels['RightChatDataPanel']['right'] = "Time"  --Checked
-	E.db.datatexts.panels['Top_Center'] = "Version"  --Checked
-	E.db.datatexts.panels['Bottom_Panel'] = "System"  --Checked
-	E.db.datatexts.panels['LeftMiniPanel'] = "Gold"  --Checked
-	E.db.datatexts.panels['RightMiniPanel'] = "Spec Switch"  --Checked
-
-	--Datatext Panels Spec Specific
-	if layout == 'tank' then
-		E.db.datatexts.panels.DP_5.left = '';  --Checked
-		E.db.datatexts.panels.DP_5.middle = '';  --Checked
-		E.db.datatexts.panels.DP_5.right = '';  --Checked
-		E.db.datatexts.panels.DP_6.left = '';  --Checked
-		E.db.datatexts.panels.DP_6.middle = '';  --Checked
-	elseif layout == 'healer' then
-		E.db.datatexts.panels.DP_5.left = '';  --Checked
-		E.db.datatexts.panels.DP_5.middle = 'Crit Chance';  --Checked
-		E.db.datatexts.panels.DP_5.right = 'Spell/Heal Power';  --Checked
-		E.db.datatexts.panels.DP_6.left = 'Haste';  --Checked
-		E.db.datatexts.panels.DP_6.middle = '';  --Checked
-	elseif layout == 'dpsCaster' then
-		E.db.datatexts.panels.DP_5.left = 'Hit Rating';  --Checked
-		E.db.datatexts.panels.DP_5.middle = 'Crit Chance';  --Checked
-		E.db.datatexts.panels.DP_5.right = 'Spell/Heal Power';  --Checked
-		E.db.datatexts.panels.DP_6.left = 'Haste';  --Checked
-		E.db.datatexts.panels.DP_6.middle = 'DPS';  --Checked
-	else
-		E.db.datatexts.panels.DP_5.left = '';  --Checked
-		E.db.datatexts.panels.DP_5.middle = 'Crit Chance';  --Checked
-		E.db.datatexts.panels.DP_5.right = '';  --Checked
-		E.db.datatexts.panels.DP_6.left = 'Haste';  --Checked
-		E.db.datatexts.panels.DP_6.middle = 'DPS';  --Checked
-	end
-
-	--Unitframes
-	E.db.unitframe.colors.colorhealthbyvalue = false  --Checked
-	E.db.unitframe.colors.customhealthbackdrop = true  --Checked
-	E.db.unitframe.colors.health = {
-		["b"] = 0.3764705882352941,
-		["g"] = 0.3764705882352941,
-		["r"] = 0.3764705882352941,
-	}  --Checked
-	E.db.unitframe.colors.health_backdrop = {
-		["b"] = 0,
-		["g"] = 0,
-		["r"] = 0.8784313725490196,
-	}  --Checked
-	E.db.unitframe.font = "Accidental Presidency"  --Checked
-	E.db.unitframe.fontSize = 13  --Checked
-	E.db.unitframe.fontOutline = 'THICKOUTLINE'  --Checked
-
-	--Unitframes (Player)
-	E.db.unitframe.units.player.castbar.height = 15  --Checked
-	E.db.unitframe.units.player.castbar.width = 308  --Checked
-	E.db.unitframe.units.player.classbar.fill = "fill"  --Checked
-	E.db.unitframe.units.player.health.position = "BOTTOMLEFT"  --Checked
-	E.db.unitframe.units.player.health.text_format = "[healthcolor][health:current-percent:sl]"  --Checked
-	E.db.unitframe.units.player.height = 54  --Checked
-	E.db.unitframe.units.player.name.position = "BOTTOMRIGHT"  --Checked
-	E.db.unitframe.units.player.name.text_format = "[namecolor][name:medium]"  --Checked
-	E.db.unitframe.units.player.portrait.camDistanceScale = 2  --Checked
-	E.db.unitframe.units.player.portrait.enable = true  --Checked
-	E.db.unitframe.units.player.portrait.overlay = true  --Checked
-	E.db.unitframe.units.player.power.offset = 20  --Checked
-	E.db.unitframe.units.player.power.position = "BOTTOMLEFT"  --Checked
-	E.db.unitframe.units.player.power.text_format = "[powercolor][power:current:sl]"  --Checked
-	E.db.unitframe.units.player.pvp.text_format = "||cFFB04F4F[pvptimer]||r"  --Checked
-	E.db.unitframe.units.player.restIcon = false  --Checked
-	E.db.unitframe.units.player.width = 270  --Checked
-
-	--Unitframes (Target)
-	E.db.unitframe.units.target.castbar.height = 25  --Checked
-	E.db.unitframe.units.target.castbar.width = 308  --Checked
-	E.db.unitframe.units.target.healPrediction = true  --Checked
-	E.db.unitframe.units.target.health.position = "BOTTOMRIGHT"  --Checked
-	E.db.unitframe.units.target.health.text = true  --Checked
-	E.db.unitframe.units.target.name.enable = true  --Checked
-	E.db.unitframe.units.target.name.position = "BOTTOMLEFT"  --Checked
-	E.db.unitframe.units.target.portrait.camDistanceScale = 2  --Checked
-	E.db.unitframe.units.target.portrait.enable = true  --Checked
-	E.db.unitframe.units.target.portrait.overlay = true  --Checked
-	E.db.unitframe.units.target.power.hideonnpc = false  --Checked
-	E.db.unitframe.units.target.power.offset = 20  --Checked
-	E.db.unitframe.units.target.power.position = "BOTTOMRIGHT"  --Checked
-	E.db.unitframe.units.target.power.hideonnpc = false  --Checked
-
-	--Unitframes (Raid10)
-	E.db.unitframe.units.raid10.health.orientation = "VERTICAL"  --Checked
-	E.db.unitframe.units.raid10.width = 69  --Checked
-
-	--Unitframes (Raid25)
-	E.db.unitframe.units.raid25.healPrediction = true  --Checked
-	E.db.unitframe.units.raid25.width = 69  --Checked
-	E.db.unitframe.units.raid25.health.orientation = "VERTICAL"  --Checked
-	E.db.unitframe.units.raid25.height = 39  --Checked
-
-	--Unitframes (Raid40)
-	E.db.unitframe.units.raid40.width = 69  --Checked
-
-	if layout == "healer" then
-		E.db.movers.ElvUF_PlayerMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT489332"  --Checked
-		E.db.movers.ElvUF_TargetMover = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-492332"  --Checked
-		E.db.movers.ElvUF_TargetTargetMover = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-789347"  --Checked
-		E.db.movers.ElvUF_PetMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT489294"  --Checked
-		E.db.movers.ElvUF_FocusMover = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-260342"  --Checked
-		E.db.movers.ElvUF_PartyMover = "BOTTOMLEFTUIParentBOTTOMLEFT44379"  --Checked
-		E.db.movers.ElvUF_PlayerCastbarMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT806170"  --Checked
-		E.db.movers.ElvUF_Raid10Mover = "BOTTOMLEFTElvUIParentBOTTOMLEFT44379"  --Checked
-		E.db.movers.ElvUF_Raid25Mover = "BOTTOMLEFTElvUIParentBOTTOMLEFT44323"  --Checked
-		E.db.movers.ElvUF_Raid40Mover = "BOTTOMLEFTElvUIParentBOTTOMLEFT44323"  --Checked
-		E.db.movers.ElvUF_TargetCastbarMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT806193"  --Checked
-		E.db.movers.MarkMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT883229"  --Checked
-		E.db.movers.TotemBarMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT552232"  --Checked
-		E.db.movers.UIBFrameMover = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-44222"  --Checked
-		E.db.movers.ElvAB_1 = "BOTTOMLEFTElvUIParentBOTTOMLEFT85695"  --Checked
-		E.db.movers.ElvAB_2 = "BOTTOMLEFTElvUIParentBOTTOMLEFT85621"  --Checked
-		E.db.movers.ElvAB_3 = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-80222"  --Checked
-		E.db.movers.ElvAB_5 = "BOTTOMLEFTElvUIParentBOTTOMLEFT80222"  --Checked
-	else
-		E.db.movers.ElvUF_PlayerMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT489332"  --Checked
-		E.db.movers.ElvUF_TargetMover = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-492332"  --Checked
-		E.db.movers.ElvUF_TargetTargetMover = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-789347"  --Checked
-		E.db.movers.ElvUF_PetMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT489294"  --Checked
-		E.db.movers.ElvUF_FocusMover = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-260342"  --Checked
-		E.db.movers.ElvUF_PartyMover = "BOTTOMLEFTUIParentBOTTOMLEFT44379"  --Checked
-		E.db.movers.ElvUF_PlayerCastbarMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT806170"  --Checked
-		E.db.movers.ElvUF_Raid10Mover = "BOTTOMLEFTElvUIParentBOTTOMLEFT44379"  --Checked
-		E.db.movers.ElvUF_Raid25Mover = "BOTTOMLEFTElvUIParentBOTTOMLEFT44323"  --Checked
-		E.db.movers.ElvUF_Raid40Mover = "BOTTOMLEFTElvUIParentBOTTOMLEFT44323"  --Checked
-		E.db.movers.ElvUF_TargetCastbarMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT806193"  --Checked
-		E.db.movers.MarkMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT883229"  --Checked
-		E.db.movers.TotemBarMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT552232"  --Checked
-		E.db.movers.UIBFrameMover = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-44222"  --Checked
-		E.db.movers.ElvAB_1 = "BOTTOMLEFTElvUIParentBOTTOMLEFT85695"  --Checked
-		E.db.movers.ElvAB_2 = "BOTTOMLEFTElvUIParentBOTTOMLEFT85621"  --Checked
-		E.db.movers.ElvAB_3 = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-80222"  --Checked
-		E.db.movers.ElvAB_5 = "BOTTOMLEFTElvUIParentBOTTOMLEFT80222"  --Checked
-	end
-
-	for i = 1, NUM_CHAT_WINDOWS do
-		local frame = _G[format("ChatFrame%s", i)]
-		FCF_SetChatWindowFontSize(nil, frame, 14)
-	end
-
-	E:UpdateAll(true)
-end
-
-function E:ElvSetup() --The function to restore defaults. not finished yet lol
-	InstallStepComplete.message = L["Elv's Defaults Set"]
-	InstallStepComplete:Show()
-	if not E.db.movers then E.db.movers = {}; end
-	--Set to defaults. Every module is listed just in case.
-	E:CopyTable(E.db.general, P.general) --General options
-	E:CopyTable(E.db.nameplate, P.nameplate) --Nameplates
-	E:CopyTable(E.db.datatexts, P.datatexts) --Datatexts
-	E:CopyTable(E.db.actionbar, P.actionbar) --Actionbars
-	E:CopyTable(E.db.tooltip, P.tooltip) --Tooltip
-	E:CopyTable(E.db.unitframe, P.unitframe) --Unitframes
-	E:CopyTable(E.db.skins, P.skins) --Skins
-	E:CopyTable(E.db.bags, P.bags) --Bags
-	E:CopyTable(E.db.chat, P.chat) --Chat
-	E:CopyTable(E.db.sle, P.sle) --Edit's main defaults
-	E:CopyTable(E.db.microbar, P.microbar) --Microbar
-	--Move every bar and panel to the defaults.
-	E:ResetUI() --Reseting positions
-	StaticPopup3Button1:Click() --this is automatic click on confirm for reseting movers
-
-	E:UpdateAll(true)
-end
-
-function E:HudSimple()
-	local H = E:GetModule('HUD')
-	InstallStepComplete.message = L["Simple Layout Set"]
-	InstallStepComplete:Show()
-	H:SimpleLayout()
-	H:UpdateAllFrames()
-end
-
-function E:HudDefault()
-	local H = E:GetModule('HUD')
-	InstallStepComplete.message = L["Default Layout"]
-	InstallStepComplete:Show()
-	E:CopyTable(E.db.hud,P.hud)
-	H:UpdateAllFrames()
-end
-
-local function InstallComplete()
-	E.db.install_complete = E.version
-
-	if GetCVarBool("Sound_EnableMusic") then
-		StopMusic()
-	end
-
-	ReloadUI()
-end
-
-local function ResetAll()
-	InstallNextButton:Disable()
-	InstallPrevButton:Disable()
-	InstallOption1Button:Hide()
-	InstallOption1Button:SetScript("OnClick", nil)
-	InstallOption1Button:SetText("")
-	InstallOption2Button:Hide()
-	InstallOption2Button:SetScript('OnClick', nil)
-	InstallOption2Button:SetText('')
-	InstallOption3Button:Hide()
-	InstallOption3Button:SetScript('OnClick', nil)
-	InstallOption3Button:SetText('')
-	InstallOption4Button:Hide()
-	InstallOption4Button:SetScript('OnClick', nil)
-	InstallOption4Button:SetText('')
-	ElvUIInstallFrame.SubTitle:SetText("")
-	ElvUIInstallFrame.Desc1:SetText("")
-	ElvUIInstallFrame.Desc2:SetText("")
-	ElvUIInstallFrame.Desc3:SetText("")
-	ElvUIInstallFrame:Size(550, 400)
-end
-
-local function SetPage(PageNum)
-	--Elv Has
-	CURRENT_PAGE = PageNum
-	ResetAll()
-	InstallStatus:SetValue(PageNum)
-
-	local f = ElvUIInstallFrame
-
-	if PageNum == MAX_PAGE then
-		InstallNextButton:Disable()
-	else
-		InstallNextButton:Enable()
-	end
-
-	if PageNum == 1 then
-		InstallPrevButton:Disable()
-	else
-		InstallPrevButton:Enable()
-	end
-
-	if PageNum == 1 then
-		f.SubTitle:SetText(format(L["Welcome to ElvUI version %s!"], E.version))
-		f.Desc1:SetText(L["This install process will help you learn some of the features in ElvUI has to offer and also prepare your user interface for usage."])
-		f.Desc2:SetText(L["The in-game configuration menu can be accesses by typing the /ec command or by clicking the 'C' button on the minimap. Press the button below if you wish to skip the installation process."])
-		f.Desc3:SetText(L["Please press the continue button to go onto the next step."])
-
-		InstallOption1Button:Show()
-		InstallOption1Button:SetScript("OnClick", InstallComplete)
-		InstallOption1Button:SetText(L["Skip Process"])
-	elseif PageNum == 2 then
-		f.SubTitle:SetText(L["CVars"])
-		f.Desc1:SetText(L["This part of the installation process sets up your World of Warcraft default options it is recommended you should do this step for everything to behave properly."])
-		f.Desc2:SetText(L["Please click the button below to setup your CVars."])
-		f.Desc3:SetText(L["Importance: |cff07D400High|r"])
-		InstallOption1Button:Show()
-		InstallOption1Button:SetScript("OnClick", SetupCVars)
-		InstallOption1Button:SetText(L["Setup CVars"])
-	elseif PageNum == 3 then
-		f.SubTitle:SetText(L["Chat"])
-		f.Desc1:SetText(L["This part of the installation process sets up your chat windows names, positions and colors."])
-		f.Desc2:SetText(L["The chat windows function the same as Blizzard standard chat windows, you can right click the tabs and drag them around, rename, etc. Please click the button below to setup your chat windows."])
-		f.Desc3:SetText(L["Importance: |cffD3CF00Medium|r"])
-		InstallOption1Button:Show()
-		InstallOption1Button:SetScript("OnClick", SetupChat)
-		InstallOption1Button:SetText(L["Setup Chat"])
-	elseif PageNum == 4 then
-		f.SubTitle:SetText(L['Theme Setup'])
-		f.Desc1:SetText(L['Choose a theme layout you wish to use for your initial setup.'])
-		f.Desc2:SetText(L['You can always change fonts and colors of any element of elvui from the in-game configuration.'])
-		f.Desc3:SetText(L["Importance: |cffFF0000Low|r"])
-
-		InstallOption1Button:Show()
-		InstallOption1Button:SetScript('OnClick', function() E:SetupTheme('classic') end)
-		InstallOption1Button:SetText(L["Classic"])
-		InstallOption2Button:Show()
-		InstallOption2Button:SetScript('OnClick', function() E:SetupTheme('default') end)
-		InstallOption2Button:SetText(DEFAULT)
-		InstallOption3Button:Show()
-		InstallOption3Button:SetScript('OnClick', function() E:SetupTheme('class') end)
-		InstallOption3Button:SetText(CLASS)
-	elseif PageNum == 5 then
-		f.SubTitle:SetText(L["Resolution"])
-		f.Desc1:SetText(format(L["Your current resolution is %s, this is considered a %s resolution."], E.resolution, E.lowversion == true and L["low"] or L["high"]))
-		if E.lowversion then
-			f.Desc2:SetText(L["This resolution requires that you change some settings to get everything to fit on your screen."].." "..L["Click the button below to resize your chat frames, unitframes, and reposition your actionbars."].." "..L["You may need to further alter these settings depending how low you resolution is."])
-			f.Desc3:SetText(L["Importance: |cff07D400High|r"])
-		else
-			f.Desc2:SetText(L["This resolution doesn't require that you change settings for the UI to fit on your screen."].." "..L["Click the button below to resize your chat frames, unitframes, and reposition your actionbars."].." "..L["This is completely optional."])
-			f.Desc3:SetText(L["Importance: |cffFF0000Low|r"])
-		end
-
-		InstallOption1Button:Show()
-		InstallOption1Button:SetScript('OnClick', function() E.SetupResolution('high') end)
-		InstallOption1Button:SetText(L["High Resolution"])
-		InstallOption2Button:Show()
-		InstallOption2Button:SetScript('OnClick', function() E.SetupResolution('low') end)
-		InstallOption2Button:SetText(L['Low Resolution'])
-	elseif PageNum == 6 then
-		f.SubTitle:SetText(L["Layout"])
-		f.Desc1:SetText(L["You can now choose what layout you wish to use based on your combat role."])
-		f.Desc2:SetText(L["This will change the layout of your unitframes, raidframes, and datatexts."])
-		f.Desc3:SetText(L["Importance: |cffD3CF00Medium|r"])
-		InstallOption1Button:Show()
-		InstallOption1Button:SetScript('OnClick', function() E.db.layoutSet = nil; E:SetupLayout('tank') end)
-		InstallOption1Button:SetText(L['Tank'])
-		InstallOption2Button:Show()
-		InstallOption2Button:SetScript('OnClick', function() E.db.layoutSet = nil; E:SetupLayout('healer') end)
-		InstallOption2Button:SetText(L['Healer'])
-		InstallOption3Button:Show()
-		InstallOption3Button:SetScript('OnClick', function() E.db.layoutSet = nil; E:SetupLayout('dpsMelee') end)
-		InstallOption3Button:SetText(L['Physical DPS'])
-		InstallOption4Button:Show()
-		InstallOption4Button:SetScript('OnClick', function() E.db.layoutSet = nil; E:SetupLayout('dpsCaster') end)
-		InstallOption4Button:SetText(L['Caster DPS'])
-	elseif PageNum == 7 then
-		f.SubTitle:SetText(L["Auras System"])
-		f.Desc1:SetText(L["Select the type of aura system you want to use with ElvUI's unitframes. The integrated system utilizes both aura-bars and aura-icons. The icons only system will display only icons and aurabars won't be used. The classic system will configure your auras to how they were pre-v4."])
-		f.Desc2:SetText(L["If you have an icon or aurabar that you don't want to display simply hold down shift and right click the icon for it to disapear."])
-		f.Desc3:SetText(L["Importance: |cffD3CF00Medium|r"])
-		InstallOption1Button:Show()
-		InstallOption1Button:SetScript('OnClick', function() SetupAuras('integrated') end)
-		InstallOption1Button:SetText(L['Integrated'])
-		InstallOption2Button:Show()
-		InstallOption2Button:SetScript('OnClick', function() SetupAuras() end)
-		InstallOption2Button:SetText(L['Icons Only'])
-		InstallOption3Button:Show()
-		InstallOption3Button:SetScript('OnClick', function() SetupAuras('classic') end)
-		InstallOption3Button:SetText(L['Classic'])
-	elseif PageNum == 8 then --The new page
-		f.SubTitle:SetText(L["Shadow & Light Settings"])
-		f.Desc1:SetText(L["You can now choose if you what to use one of authors' set of options. This will change not only the positioning of some elements but also change a bunch of other options."])
-		f.Desc2:SetText(L["SLE_Install_Text2"])
-		f.Desc3:SetText(L["Importance: |cffFF0000Low|r"])
-
-		InstallOption1Button:Show()
-		InstallOption1Button:SetScript('OnClick', function() E:DarthSetup() end)
-		InstallOption1Button:SetText(L["Darth's Config"])
-		InstallOption2Button:Show()
-		InstallOption2Button:SetScript('OnClick', function() E:RepoocSetup() end)
-		InstallOption2Button:SetText(L["Repooc's Config"])
-		InstallOption3Button:Show()
-		InstallOption3Button:SetScript('OnClick', function() E:ElvSetup() end)
-		InstallOption3Button:SetText(L["Elv's Defaults"])
-	elseif PageNum == 9 and IsAddOnLoaded("ElvUI_Hud") then --Hud's page if enabled
-		f.SubTitle:SetText("ElvUI Hud")
-		f.Desc1:SetText(L["Thank you for using ElvUI Hud!"])
-		f.Desc2:SetText(L["Here you can choose between the simple layout (only player health and power) or the default layout for the hud"])
-		f.Desc3:SetText(L["Importance: |cffFF0000Low|r"])
-
-		InstallOption1Button:Show()
-		InstallOption1Button:SetScript('OnClick', function() E:HudSimple() end)
-		InstallOption1Button:SetText(L["Simple Layout"])
-		InstallOption2Button:Show()
-		InstallOption2Button:SetScript('OnClick', function() E:HudDefault() end)
-		InstallOption2Button:SetText(L["Default Layout"])
-	elseif PageNum == 9 and not IsAddOnLoaded("ElvUI_Hud") then --Finish install if Hud disabled
-		f.SubTitle:SetText(L["Installation Complete"])
-		f.Desc1:SetText(L["You are now finished with the installation process. If you are in need of technical support please visit us at http://www.tukui.org."])
-		f.Desc2:SetText(L["Please click the button below so you can setup variables and ReloadUI."])
-
-		InstallOption1Button:Show()
-		InstallOption1Button:SetScript("OnClick", InstallComplete)
-		InstallOption1Button:SetText(L["Finished"])
-		ElvUIInstallFrame:Size(550, 350)
-	elseif PageNum == 10 then --Finish install if Hud enabled
-		f.SubTitle:SetText(L["Installation Complete"])
-		f.Desc1:SetText(L["You are now finished with the installation process. If you are in need of technical support please visit us at http://www.tukui.org."])
-		f.Desc2:SetText(L["Please click the button below so you can setup variables and ReloadUI."])
-
-		InstallOption1Button:Show()
-		InstallOption1Button:SetScript("OnClick", InstallComplete)
-		InstallOption1Button:SetText(L["Finished"])
-		ElvUIInstallFrame:Size(550, 350)
-	end
-end
-
-local function NextPage()
-	if CURRENT_PAGE ~= MAX_PAGE then
-		CURRENT_PAGE = CURRENT_PAGE + 1
-		SetPage(CURRENT_PAGE)
-	end
-end
-
-local function PreviousPage()
-	if CURRENT_PAGE ~= 1 then
-		CURRENT_PAGE = CURRENT_PAGE - 1
-		SetPage(CURRENT_PAGE)
-	end
-end
-
---Install UI
-function E:Install()
-	--ElvUI don't have this?
-	MaxPages()
-	if not InstallStepComplete then
-		local imsg = CreateFrame("Frame", "InstallStepComplete", E.UIParent)
-		imsg:Size(418, 72)
-		imsg:Point("TOP", 0, -190)
-		imsg:Hide()
-		imsg:SetScript('OnShow', function(self)
-			if self.message then
-				PlaySoundFile([[Sound\Interface\LevelUp.wav]])
-				self.text:SetText(self.message)
-				UIFrameFadeOut(self, 3.5, 1, 0)
-				E:Delay(4, function() self:Hide() end)
-				self.message = nil
-
-				if imsg.firstShow == false then
-					if GetCVarBool("Sound_EnableMusic") then
-						PlayMusic([[Sound\Music\ZoneMusic\DMF_L70ETC01.mp3]])
-					end
-					imsg.firstShow = true
-				end
-			else
-				self:Hide()
-			end
-		end)
-
-		imsg.firstShow = false
-
-		imsg.bg = imsg:CreateTexture(nil, 'BACKGROUND')
-		imsg.bg:SetTexture([[Interface\LevelUp\LevelUpTex]])
-		imsg.bg:SetPoint('BOTTOM')
-		imsg.bg:Size(326, 103)
-		imsg.bg:SetTexCoord(0.00195313, 0.63867188, 0.03710938, 0.23828125)
-		imsg.bg:SetVertexColor(1, 1, 1, 0.6)
-
-		imsg.lineTop = imsg:CreateTexture(nil, 'BACKGROUND')
-		imsg.lineTop:SetDrawLayer('BACKGROUND', 2)
-		imsg.lineTop:SetTexture([[Interface\LevelUp\LevelUpTex]])
-		imsg.lineTop:SetPoint("TOP")
-		imsg.lineTop:Size(418, 7)
-		imsg.lineTop:SetTexCoord(0.00195313, 0.81835938, 0.01953125, 0.03320313)
-
-		imsg.lineBottom = imsg:CreateTexture(nil, 'BACKGROUND')
-		imsg.lineBottom:SetDrawLayer('BACKGROUND', 2)
-		imsg.lineBottom:SetTexture([[Interface\LevelUp\LevelUpTex]])
-		imsg.lineBottom:SetPoint("BOTTOM")
-		imsg.lineBottom:Size(418, 7)
-		imsg.lineBottom:SetTexCoord(0.00195313, 0.81835938, 0.01953125, 0.03320313)
-
-		imsg.text = imsg:CreateFontString(nil, 'ARTWORK', 'GameFont_Gigantic')
-		imsg.text:Point("BOTTOM", 0, 12)
-		imsg.text:SetTextColor(1, 0.82, 0)
-		imsg.text:SetJustifyH("CENTER")
-	end
-
-	--Create Frame
-	if not ElvUIInstallFrame then
-		local f = CreateFrame("Button", "ElvUIInstallFrame", E.UIParent)
-		f.SetPage = SetPage
-		f:Size(550, 400)
-		f:SetTemplate("Transparent")
-		f:CreateShadow("Default")
-		f:SetPoint("CENTER")
-		f:SetFrameStrata('TOOLTIP')
-
-		f.Title = f:CreateFontString(nil, 'OVERLAY')
-		f.Title:FontTemplate(nil, 17, nil)
-		f.Title:Point("TOP", 0, -5)
-		f.Title:SetText(L["ElvUI Installation"])
-
-		f.Next = CreateFrame("Button", "InstallNextButton", f, "UIPanelButtonTemplate")
-		f.Next:StripTextures()
-		f.Next:SetTemplate("Default", true)
-		f.Next:Size(110, 25)
-		f.Next:Point("BOTTOMRIGHT", -5, 5)
-		f.Next:SetText(CONTINUE)
-		f.Next:Disable()
-		f.Next:SetScript("OnClick", NextPage)
-		E.Skins:HandleButton(f.Next, true)
-
-		f.Prev = CreateFrame("Button", "InstallPrevButton", f, "UIPanelButtonTemplate")
-		f.Prev:StripTextures()
-		f.Prev:SetTemplate("Default", true)
-		f.Prev:Size(110, 25)
-		f.Prev:Point("BOTTOMLEFT", 5, 5)
-		f.Prev:SetText(PREVIOUS)
-		f.Prev:Disable()
-		f.Prev:SetScript("OnClick", PreviousPage)
-		E.Skins:HandleButton(f.Prev, true)
-
-		f.Status = CreateFrame("StatusBar", "InstallStatus", f)
-		f.Status:SetFrameLevel(f.Status:GetFrameLevel() + 2)
-		f.Status:CreateBackdrop("Default")
-		f.Status:SetStatusBarTexture(E["media"].normTex)
-		f.Status:SetStatusBarColor(unpack(E["media"].rgbvaluecolor))
-		f.Status:SetMinMaxValues(0, MAX_PAGE)
-		f.Status:Point("TOPLEFT", f.Prev, "TOPRIGHT", 6, -2)
-		f.Status:Point("BOTTOMRIGHT", f.Next, "BOTTOMLEFT", -6, 2)
-		f.Status.text = f.Status:CreateFontString(nil, 'OVERLAY')
-		f.Status.text:FontTemplate()
-		f.Status.text:SetPoint("CENTER")
-		f.Status.text:SetText(CURRENT_PAGE.." / "..MAX_PAGE)
-		f.Status:SetScript("OnValueChanged", function(self)
-			self.text:SetText(self:GetValue().." / "..MAX_PAGE)
-		end)
-
-		f.Option1 = CreateFrame("Button", "InstallOption1Button", f, "UIPanelButtonTemplate")
-		f.Option1:StripTextures()
-		f.Option1:Size(160, 30)
-		f.Option1:Point("BOTTOM", 0, 45)
-		f.Option1:SetText("")
-		f.Option1:Hide()
-		E.Skins:HandleButton(f.Option1, true)
-
-		f.Option2 = CreateFrame("Button", "InstallOption2Button", f, "UIPanelButtonTemplate")
-		f.Option2:StripTextures()
-		f.Option2:Size(110, 30)
-		f.Option2:Point('BOTTOMLEFT', f, 'BOTTOM', 4, 45)
-		f.Option2:SetText("")
-		f.Option2:Hide()
-		f.Option2:SetScript('OnShow', function() f.Option1:SetWidth(110); f.Option1:ClearAllPoints(); f.Option1:Point('BOTTOMRIGHT', f, 'BOTTOM', -4, 45) end)
-		f.Option2:SetScript('OnHide', function() f.Option1:SetWidth(160); f.Option1:ClearAllPoints(); f.Option1:Point("BOTTOM", 0, 45) end)
-		E.Skins:HandleButton(f.Option2, true)
-
-		f.Option3 = CreateFrame("Button", "InstallOption3Button", f, "UIPanelButtonTemplate")
-		f.Option3:StripTextures()
-		f.Option3:Size(100, 30)
-		f.Option3:Point('LEFT', f.Option2, 'RIGHT', 4, 0)
-		f.Option3:SetText("")
-		f.Option3:Hide()
-		f.Option3:SetScript('OnShow', function() f.Option1:SetWidth(100); f.Option1:ClearAllPoints(); f.Option1:Point('RIGHT', f.Option2, 'LEFT', -4, 0); f.Option2:SetWidth(100); f.Option2:ClearAllPoints(); f.Option2:Point('BOTTOM', f, 'BOTTOM', 0, 45)  end)
-		f.Option3:SetScript('OnHide', function() f.Option1:SetWidth(160); f.Option1:ClearAllPoints(); f.Option1:Point("BOTTOM", 0, 45); f.Option2:SetWidth(110); f.Option2:ClearAllPoints(); f.Option2:Point('BOTTOMLEFT', f, 'BOTTOM', 4, 45) end)
-		E.Skins:HandleButton(f.Option3, true)
-
-		f.Option4 = CreateFrame("Button", "InstallOption4Button", f, "UIPanelButtonTemplate")
-		f.Option4:StripTextures()
-		f.Option4:Size(100, 30)
-		f.Option4:Point('LEFT', f.Option3, 'RIGHT', 4, 0)
-		f.Option4:SetText("")
-		f.Option4:Hide()
-		f.Option4:SetScript('OnShow', function()
-			f.Option1:Width(100)
-			f.Option2:Width(100)
-
-			f.Option1:ClearAllPoints();
-			f.Option1:Point('RIGHT', f.Option2, 'LEFT', -4, 0);
-			f.Option2:ClearAllPoints();
-			f.Option2:Point('BOTTOMRIGHT', f, 'BOTTOM', -4, 45)
-		end)
-		f.Option4:SetScript('OnHide', function() f.Option1:SetWidth(160); f.Option1:ClearAllPoints(); f.Option1:Point("BOTTOM", 0, 45); f.Option2:SetWidth(110); f.Option2:ClearAllPoints(); f.Option2:Point('BOTTOMLEFT', f, 'BOTTOM', 4, 45) end)
-		E.Skins:HandleButton(f.Option4, true)
-
-		f.SubTitle = f:CreateFontString(nil, 'OVERLAY')
-		f.SubTitle:FontTemplate(nil, 15, nil)
-		f.SubTitle:Point("TOP", 0, -40)
-
-		f.Desc1 = f:CreateFontString(nil, 'OVERLAY')
-		f.Desc1:FontTemplate()
-		f.Desc1:Point("TOPLEFT", 20, -75)
-		f.Desc1:Width(f:GetWidth() - 40)
-
-		f.Desc2 = f:CreateFontString(nil, 'OVERLAY')
-		f.Desc2:FontTemplate()
-		f.Desc2:Point("TOPLEFT", 20, -125)
-		f.Desc2:Width(f:GetWidth() - 40)
-
-		f.Desc3 = f:CreateFontString(nil, 'OVERLAY')
-		f.Desc3:FontTemplate()
-		f.Desc3:Point("TOPLEFT", 20, -175)
-		f.Desc3:Width(f:GetWidth() - 40)
-
-		local close = CreateFrame("Button", "InstallCloseButton", f, "UIPanelCloseButton")
-		close:SetPoint("TOPRIGHT", f, "TOPRIGHT")
-		close:SetScript("OnClick", function()
-			f:Hide()
-		end)
-		E.Skins:HandleCloseButton(close)
-
-		f.tutorialImage = f:CreateTexture('InstallTutorialImage', 'OVERLAY')
-		f.tutorialImage:Size(256, 128)
-		f.tutorialImage:SetTexture('Interface\\AddOns\\ElvUI_SLE\\textures\\logo_elvui_sle.tga')
-		f.tutorialImage:Point('BOTTOM', 0, 70)
-
-	end
-
-	ElvUIInstallFrame:Show()
-	NextPage()
-end
\ No newline at end of file
diff --git a/ElvUI_SLE/core/load_core.xml b/ElvUI_SLE/core/load_core.xml
deleted file mode 100644
index 51dbbb8..0000000
--- a/ElvUI_SLE/core/load_core.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<Ui xmlns="http://www.blizzard.com/wow/ui/">
-	<Script file='install.lua'/>
-	<Script file='options.lua'/>
-	<Script file='test.lua'/>
-</Ui>
\ No newline at end of file
diff --git a/ElvUI_SLE/core/options.lua b/ElvUI_SLE/core/options.lua
deleted file mode 100644
index 7fdb46d..0000000
--- a/ElvUI_SLE/core/options.lua
+++ /dev/null
@@ -1,59 +0,0 @@
-local E, L, V, P, G =  unpack(ElvUI); --Inport: Engine, Locales, ProfileDB, GlobalDB
-local UF = E:GetModule('UnitFrames')
-local AB = E:GetModule('ActionBars')
-local CH = E:GetModule('Chat')
-local A = E:GetModule('Auras')
-
---Main options group
-E.Options.args.sle = {
-	type = "group",
-	name = L["Shadow & Light Edit"],
-    order = 50,
-   	args = {
-		header = {
-			order = 1,
-			type = "header",
-			name = L["Shadow & Light Edit of ElvUI"],
-		},
-		info = {
-			order = 2,
-			type = "description",
-			name = L["SLE_DESC"],
-		},
-		general = {
-			order = 3,
-			type = "group",
-			name = L["General"],
-			guiInline = true,
-			args = {
-				lfrshow = {
-					order = 1,
-					type = "toggle",
-					name = L["LFR Lockdown"],
-					desc = L["Show/Hide LFR lockdown info in time datatext's tooltip."],
-					get = function(info) return E.db.datatexts.lfrshow end,
-					set = function(info, value) E.db.datatexts.lfrshow = value; end
-				},
-			},
-		},
-	},
-}
-
---Credits
-E.Options.args.sle.args.credits = {
-	order = 200,
-	type = 'group',
-	name = L["Credits"],
-	args = {
-		creditheader = {
-			order = 1,
-			type = "header",
-			name = L["Credits"],
-		},
-		credits = {
-			order = 2,
-			type = "description",
-			name = L["ELVUI_SLE_CREDITS"]..'\n\n\n'..L["Submodules and Coding:"]..'\n\n'..L["ELVUI_SLE_CODERS"]..'\n\n\n'..L["Other Support:"]..'\n\n'..L["ELVUI_SLE_MISC"],
-		},
-	},
-}
\ No newline at end of file
diff --git a/ElvUI_SLE/core/test.lua b/ElvUI_SLE/core/test.lua
deleted file mode 100644
index 572322f..0000000
--- a/ElvUI_SLE/core/test.lua
+++ /dev/null
@@ -1,48 +0,0 @@
-local E, L, V, P, G, _ = unpack(ElvUI); --Inport: Engine, Locales, PrivateDB, ProfileDB, GlobalDB
-local AL = E:NewModule('Autoloot', 'AceHook-3.0', 'AceEvent-3.0');
-local M = E:GetModule('Misc')
-
-function M:ErrorFrameToggle(event)
-	if event == 'PLAYER_REGEN_DISABLED' and E.private.sle.errors ~= true then
-		UIErrorsFrame:UnregisterEvent('UI_ERROR_MESSAGE')
-	else
-		UIErrorsFrame:RegisterEvent('UI_ERROR_MESSAGE')
-	end
-end
-
-E.Options.args.sle.args.general.args.errors = {
-	order = 3,
-	type = "toggle",
-	name = L["Errors in combat"],
-	desc = L["Show/hide error messages in combat."],
-	get = function(info) return E.private.sle.errors end,
-	set = function(info, value) E.private.sle.errors = value; E:StaticPopup_Show("PRIVATE_RL") end
-}
-
-E.Options.args.sle.args.general.args.autoloot = {
-	order = 2,
-	type = "toggle",
-	name = "Autoloot",
-	desc = "Enable/Disable Autoloot window",
-	get = function(info) return E.db.sle.autoloot end,
-	set = function(info, value) E.db.sle.autoloot = value; end
-}
-function AL:LootShow() --Needs to be run on PLAYER_ENTERING_WORLD event = loading screen ends. Also need a module assinged.
-	local inInstance, instanceType = IsInInstance()
-	--local isDungeon = (instanceType == "party")
-	if (inInstance and (instanceType == "party" or "raid") and E.db.sle.autoloot) then --in instance with option enabled
-		LootHistoryFrame:Show()
-	elseif (inInstance and (instanceType == "party" or "raid") and not E.db.sle.autoloot) then --in instance with option disabled
-	elseif (not inInstance and E.db.sle.autoloot) then--out of instance with option enabled
-		LootHistoryFrame:Hide()
-	else --out of instance with option disabled
-	end
-end
-
-function AL:Initialize()
-	self:LootShow()
-	self:RegisterEvent('PLAYER_ENTERING_WORLD', 'LootShow')
-	self:RegisterEvent('PLAYER_LOGIN', 'LootShow')
-end
-
-E:RegisterModule(AL:GetName())
\ No newline at end of file
diff --git a/ElvUI_SLE/libs/oUF_Vengeance/oUF_Vengeance.lua b/ElvUI_SLE/libs/oUF_Vengeance/oUF_Vengeance.lua
deleted file mode 100644
index 9daa685..0000000
--- a/ElvUI_SLE/libs/oUF_Vengeance/oUF_Vengeance.lua
+++ /dev/null
@@ -1,213 +0,0 @@
---[[
-	Project.: oUF_Vengeance
-	File....: oUF_Vengeance.lua
-	Version.: 40200.5
-	Rev Date: 06/28/2011
-	Authors.: Shandrela [EU-Baelgun] <Bloodmoon>
-]]
-
---[[
-	Elements handled:
-	 .Vengeance [frame]
-	 .Vengeance.Text [fontstring]
-
-	Code Example:
-	 .Vengeance = CreateFrame("StatusBar", nil, self)
-	 .Vengeance:SetWidth(400)
-	 .Vengeance:SetHeight(20)
-	 .Vengeance:SetPoint("BOTTOM", UIParent, "BOTTOM", 0, 100)
-	 .Vengeance:SetStatusBarTexture(normTex)
-	 .Vengeance:SetStatusBarColor(1,0,0)
-
-	Functions that can be overridden from within a layout:
-	 - :OverrideText(value)
-
-	Possible OverrideText function:
-
-	local VengOverrideText(bar, value)
-		local text = bar.Text
-
-		text:SetText(value)
-	end
-	...
-	ElvUF_Player.Vengeance.OverrideText = VengOverrideText
-
-	others:
-	ElvUF_Player.Vengeance.showInfight [boolean]
-	if true, the Vengeance bar will be shown infight, even if you haven't got stacks of Vengeance
---]]
-local E, L, V, P, G =  unpack(ElvUI); --Engine
-local VG = E:NewModule('Vengeance', 'AceHook-3.0', 'AceEvent-3.0');
-local _, ns = ...
-local oUF = ElvUF or oUF
-
-local _, class = UnitClass("player")
-local vengeance = GetSpellInfo(93098) or GetSpellInfo(76691)
-
-local UnitAura = UnitAura
-local InCombatLockdown = InCombatLockdown
-
-local tooltip = CreateFrame("GameTooltip", "VengeanceTooltip", UIParent, "GameTooltipTemplate")
-local tooltiptext = _G[tooltip:GetName().."TextLeft2"]
-
-tooltip:SetOwner(UIParent, "ANCHOR_NONE")
-tooltiptext:SetText("")
-
-function VG:CreateBar()
-ElvUF_Player.Vengeance = CreateFrame("StatusBar", nil, RightChatTab)
-local Vbar = ElvUF_Player.Vengeance
-Vbar:CreateBackdrop("Default")
-Vbar:SetFrameLevel(5)
-Vbar:Point("TOPLEFT", RightChatTab, "TOPLEFT", 0, 0) --2 lines for determining positioning and size
-Vbar:Point("BOTTOMRIGHT", RightChatTab, "BOTTOMRIGHT", 0, 2)
-Vbar:SetStatusBarTexture(E["media"].normTex)
-
-Vbar.Text = Vbar:CreateFontString(nil, 'OVERLAY')
-Vbar.Text:FontTemplate(nil, 10) --Font temeplate. will need to change that maybe
-Vbar.Text:SetParent(Vbar)
-
-Vbar.Text:Point("CENTER", Vbar, "CENTER", 0, 0) --May need to change that to be at the left side instead of center
-end
-
-local function valueChanged(self, event, unit)
-	if unit ~= "player" then return end
-	local bar = ElvUF_Player.Vengeance
-
-	if not bar.isTank then
-		bar:Hide()
-		return
-	end
-
-	local name = UnitAura("player", vengeance, nil, "PLAYER|HELPFUL")
-
-	if name then
-		tooltip:ClearLines()
-		tooltip:SetUnitBuff("player", name)
-		local value = (tooltiptext:GetText() and tonumber(string.match(tostring(tooltiptext:GetText()), "%d+"))) or -1
-
-		if value > 0 then
-			if value > bar.max then value = bar.max end
-			if value == bar.value then return end
-
-			bar:SetMinMaxValues(0, bar.max)
-			bar:SetValue(value)
-			bar.value = value
-			bar:Show()
-			local percent = (value/bar.max)*100
-
-			if bar.Text then
-				if bar.OverrideText then
-					bar:OverrideText(self, value)
-				else
-					bar.Text:SetText(string.format(vengeance..": %s/%s (%.2f%%)",value,bar.max,percent))
-				end
-			end
-			if (percent <= 25) then
-				bar:SetStatusBarColor(1, 75 / 255, 75 / 255, 0.5, .8)
-			elseif (percent > 25 and percent < 60) then
-				bar:SetStatusBarColor(1, 180 / 255, 0, .8)
-			else
-				bar:SetStatusBarColor(30 / 255, 1, 30 / 255, .8)
-			end
-		end
-	elseif bar.showInfight and InCombatLockdown() then
-		bar:Show()
-		bar:SetMinMaxValues(0, 1)
-		bar:SetValue(0)
-		bar.value = 0
-	else
-		bar:Hide()
-		bar.value = 0
-	end
-end
-
-local function maxChanged(self, event, unit)
-	if unit ~= "player" then return end
-	local bar = ElvUF_Player.Vengeance
-
-	if not bar.isTank then
-		bar:Hide()
-		return
-	end
-
-	local health = UnitHealthMax("player")
-	local _, stamina = UnitStat("player", 3)
-	local baseStam = min(20, stamina)
-	local moreStam = stamina - baseStam
-	local hpFromStam = (baseStam + (moreStam*UnitHPPerStamina("player")))*GetUnitMaxHealthModifier("player")
-	local baseHP = health - hpFromStam
-
-	if not health or not stamina then return end
-
-	bar.max = stamina + floor(baseHP/10)
-	bar:SetMinMaxValues(0, bar.max)
-
-	valueChanged(self, event, unit)
-end
-
-local function isTank(self, event)
-	local masteryIndex = GetPrimaryTalentTree()
-	local bar = ElvUF_Player.Vengeance
-
-	if masteryIndex then
-		if class == "DRUID" and masteryIndex == 2 then
-			bar.isTank = true
-		elseif (class == "DEATH KNIGHT" or class == "DEATHKNIGHT") and masteryIndex == 1 then
-			bar.isTank = true
-		elseif class == "PALADIN" and masteryIndex == 2 then
-			bar.isTank = true
-		elseif class == "WARRIOR" and masteryIndex == 3 then
-			bar.isTank = true
-		else
-			bar.isTank = false
-			bar:Hide()
-		end
-	else
-		bar.isTank = false
-		bar:Hide()
-	end
-
-	maxChanged(self, event, "player")
-end
-
-local function Enable(self, unit)
-	local bar = ElvUF_Player.Vengeance
-
-	if bar and unit == "player" then
-		bar.max = 0
-		bar.value = 0
-		self:RegisterEvent("UNIT_AURA", maxChanged)
-
-		self:RegisterEvent("UNIT_MAXHEALTH", maxChanged)
-		self:RegisterEvent("UNIT_LEVEL", maxChanged)
-
-		self:RegisterEvent("PLAYER_REGEN_DISABLED", isTank)
-		bar:Hide()
-
-		return true
-	end
-end
-
-local function Disable(self)
-	local bar = ElvUF_Player.Vengeance
-
-	if bar then
-		self:UnregisterEvent("UNIT_AURA", valueChanged)
-
-		self:UnregisterEvent("UNIT_MAXHEALTH", maxChanged)
-		self:UnregisterEvent("UNIT_LEVEL", maxChanged)
-
-		self:UnregisterEvent("PLAYER_REGEN_DISABLED", isTank)
-	end
-end
-
-Enable(ElvUF_Player, "player")
-
-oUF:AddElement("Vengeance", nil, Enable, Disable)
-
-function VG:Initialize()
-	VG:CreateBar()
-	Enable(ElvUF_Player, "player")
-end
-
-E:RegisterModule(VG:GetName())
\ No newline at end of file
diff --git a/ElvUI_SLE/libs/oUF_Vengeance/oUF_Vengeance.toc b/ElvUI_SLE/libs/oUF_Vengeance/oUF_Vengeance.toc
deleted file mode 100644
index 7a04cec..0000000
--- a/ElvUI_SLE/libs/oUF_Vengeance/oUF_Vengeance.toc
+++ /dev/null
@@ -1,8 +0,0 @@
-## Interface: 40200
-## Author: Shandrela [EU-Baelgun] <Bloodmoon>
-## Version: 40200.5
-## Title: oUF Vengeance
-## Notes: Vengeance plug-in for oUF
-## RequiredDeps: ElvUI_SLE
-
-oUF_Vengeance.lua
\ No newline at end of file
diff --git a/ElvUI_SLE/media/textures/chat_1.tga b/ElvUI_SLE/media/textures/chat_1.tga
new file mode 100644
index 0000000..44c2b99
Binary files /dev/null and b/ElvUI_SLE/media/textures/chat_1.tga differ
diff --git a/ElvUI_SLE/media/textures/logo_elvui_sle.tga b/ElvUI_SLE/media/textures/logo_elvui_sle.tga
new file mode 100644
index 0000000..a369a31
Binary files /dev/null and b/ElvUI_SLE/media/textures/logo_elvui_sle.tga differ
diff --git a/ElvUI_SLE/media/textures/outfitter.tga b/ElvUI_SLE/media/textures/outfitter.tga
new file mode 100644
index 0000000..33d1c26
Binary files /dev/null and b/ElvUI_SLE/media/textures/outfitter.tga differ
diff --git a/ElvUI_SLE/modules/errors/errors.lua b/ElvUI_SLE/modules/errors/errors.lua
new file mode 100644
index 0000000..e780f18
--- /dev/null
+++ b/ElvUI_SLE/modules/errors/errors.lua
@@ -0,0 +1,10 @@
+local E, L, V, P, G, _ = unpack(ElvUI); --Inport: Engine, Locales, PrivateDB, ProfileDB, GlobalDB
+local M = E:GetModule('Misc')
+
+function M:ErrorFrameToggle(event)
+	if event == 'PLAYER_REGEN_DISABLED' and not E.private.sle.errors then
+		UIErrorsFrame:UnregisterEvent('UI_ERROR_MESSAGE')
+	else
+		UIErrorsFrame:RegisterEvent('UI_ERROR_MESSAGE')
+	end
+end
\ No newline at end of file
diff --git a/ElvUI_SLE/modules/errors/load_errors.xml b/ElvUI_SLE/modules/errors/load_errors.xml
new file mode 100644
index 0000000..45ca3d1
--- /dev/null
+++ b/ElvUI_SLE/modules/errors/load_errors.xml
@@ -0,0 +1,4 @@
+<Ui xmlns="http://www.blizzard.com/wow/ui/">
+	<Script file='errors.lua'/>
+	<Script file='options.lua'/>
+</Ui>
\ No newline at end of file
diff --git a/ElvUI_SLE/modules/errors/options.lua b/ElvUI_SLE/modules/errors/options.lua
new file mode 100644
index 0000000..aad2eac
--- /dev/null
+++ b/ElvUI_SLE/modules/errors/options.lua
@@ -0,0 +1,10 @@
+local E, L, V, P, G, _ = unpack(ElvUI); --Inport: Engine, Locales, PrivateDB, ProfileDB, GlobalDB
+
+E.Options.args.sle.args.general.args.errors = {
+	order = 3,
+	type = "toggle",
+	name = L["Errors in combat"],
+	desc = L["Show/hide error messages in combat."],
+	get = function(info) return E.private.sle.errors end,
+	set = function(info, value) E.private.sle.errors = value; E:StaticPopup_Show("PRIVATE_RL") end
+}
\ No newline at end of file
diff --git a/ElvUI_SLE/modules/install.lua b/ElvUI_SLE/modules/install.lua
new file mode 100644
index 0000000..87d028f
--- /dev/null
+++ b/ElvUI_SLE/modules/install.lua
@@ -0,0 +1,1772 @@
+local E, L, V, P, G = unpack(ElvUI); --Inport: Engine, Locales, PrivateDB, ProfileDB, GlobalDB
+local UF = E:GetModule('UnitFrames');
+
+local CURRENT_PAGE = 0
+local MAX_PAGE
+
+local function MaxPages()
+	if IsAddOnLoaded("ElvUI_Hud") then
+		MAX_PAGE = 10
+	else
+		MAX_PAGE = 9
+	end
+end
+
+local function SetupChat()
+	InstallStepComplete.message = L["Chat Set"]
+	InstallStepComplete:Show()
+	FCF_ResetChatWindows()
+	FCF_SetLocked(ChatFrame1, 1)
+	FCF_DockFrame(ChatFrame2)
+	FCF_SetLocked(ChatFrame2, 1)
+
+	FCF_OpenNewWindow(LOOT)
+	FCF_UnDockFrame(ChatFrame3)
+	FCF_SetLocked(ChatFrame3, 1)
+	ChatFrame3:Show()
+
+	for i = 1, NUM_CHAT_WINDOWS do
+		local frame = _G[format("ChatFrame%s", i)]
+		local chatFrameId = frame:GetID()
+		local chatName = FCF_GetChatWindowInfo(chatFrameId)
+
+		-- move general bottom left
+		if i == 1 then
+			frame:ClearAllPoints()
+			frame:Point("BOTTOMLEFT", LeftChatToggleButton, "TOPLEFT", 1, 3)
+		elseif i == 3 then
+			frame:ClearAllPoints()
+			frame:Point("BOTTOMLEFT", RightChatDataPanel, "TOPLEFT", 1, 3)
+		end
+
+		FCF_SavePositionAndDimensions(frame)
+		FCF_StopDragging(frame)
+
+		-- set default Elvui font size
+		FCF_SetChatWindowFontSize(nil, frame, 12)
+
+		-- rename windows general because moved to chat #3
+		if i == 1 then
+			FCF_SetWindowName(frame, GENERAL)
+		elseif i == 2 then
+			FCF_SetWindowName(frame, GUILD_EVENT_LOG)
+		elseif i == 3 then
+			FCF_SetWindowName(frame, LOOT.." / "..TRADE)
+		end
+	end
+
+	ChatFrame_RemoveAllMessageGroups(ChatFrame1)
+	ChatFrame_AddMessageGroup(ChatFrame1, "SAY")
+	ChatFrame_AddMessageGroup(ChatFrame1, "EMOTE")
+	ChatFrame_AddMessageGroup(ChatFrame1, "YELL")
+	ChatFrame_AddMessageGroup(ChatFrame1, "GUILD")
+	ChatFrame_AddMessageGroup(ChatFrame1, "OFFICER")
+	ChatFrame_AddMessageGroup(ChatFrame1, "GUILD_ACHIEVEMENT")
+	ChatFrame_AddMessageGroup(ChatFrame1, "WHISPER")
+	ChatFrame_AddMessageGroup(ChatFrame1, "MONSTER_SAY")
+	ChatFrame_AddMessageGroup(ChatFrame1, "MONSTER_EMOTE")
+	ChatFrame_AddMessageGroup(ChatFrame1, "MONSTER_YELL")
+	ChatFrame_AddMessageGroup(ChatFrame1, "MONSTER_BOSS_EMOTE")
+	ChatFrame_AddMessageGroup(ChatFrame1, "PARTY")
+	ChatFrame_AddMessageGroup(ChatFrame1, "PARTY_LEADER")
+	ChatFrame_AddMessageGroup(ChatFrame1, "RAID")
+	ChatFrame_AddMessageGroup(ChatFrame1, "RAID_LEADER")
+	ChatFrame_AddMessageGroup(ChatFrame1, "RAID_WARNING")
+	ChatFrame_AddMessageGroup(ChatFrame1, "BATTLEGROUND")
+	ChatFrame_AddMessageGroup(ChatFrame1, "BATTLEGROUND_LEADER")
+	ChatFrame_AddMessageGroup(ChatFrame1, "BG_HORDE")
+	ChatFrame_AddMessageGroup(ChatFrame1, "BG_ALLIANCE")
+	ChatFrame_AddMessageGroup(ChatFrame1, "BG_NEUTRAL")
+	ChatFrame_AddMessageGroup(ChatFrame1, "SYSTEM")
+	ChatFrame_AddMessageGroup(ChatFrame1, "ERRORS")
+	ChatFrame_AddMessageGroup(ChatFrame1, "AFK")
+	ChatFrame_AddMessageGroup(ChatFrame1, "DND")
+	ChatFrame_AddMessageGroup(ChatFrame1, "IGNORED")
+	ChatFrame_AddMessageGroup(ChatFrame1, "ACHIEVEMENT")
+	ChatFrame_AddMessageGroup(ChatFrame1, "BN_WHISPER")
+	ChatFrame_AddMessageGroup(ChatFrame1, "BN_CONVERSATION")
+	ChatFrame_AddMessageGroup(ChatFrame1, "BN_INLINE_TOAST_ALERT")
+
+
+	ChatFrame_RemoveAllMessageGroups(ChatFrame3)
+	ChatFrame_AddMessageGroup(ChatFrame3, "COMBAT_FACTION_CHANGE")
+	ChatFrame_AddMessageGroup(ChatFrame3, "SKILL")
+	ChatFrame_AddMessageGroup(ChatFrame3, "LOOT")
+	ChatFrame_AddMessageGroup(ChatFrame3, "MONEY")
+	ChatFrame_AddMessageGroup(ChatFrame3, "COMBAT_XP_GAIN")
+	ChatFrame_AddMessageGroup(ChatFrame3, "COMBAT_HONOR_GAIN")
+	ChatFrame_AddMessageGroup(ChatFrame3, "COMBAT_GUILD_XP_GAIN")
+	ChatFrame_AddChannel(ChatFrame1, GENERAL)
+	ChatFrame_RemoveChannel(ChatFrame1, L['Trade'])
+	ChatFrame_AddChannel(ChatFrame3, L['Trade'])
+
+
+	if E.myname == "Elvz" then
+		SetCVar("scriptErrors", 1)
+	end
+
+	-- enable classcolor automatically on login and on each character without doing /configure each time.
+	ToggleChatColorNamesByClassGroup(true, "SAY")
+	ToggleChatColorNamesByClassGroup(true, "EMOTE")
+	ToggleChatColorNamesByClassGroup(true, "YELL")
+	ToggleChatColorNamesByClassGroup(true, "GUILD")
+	ToggleChatColorNamesByClassGroup(true, "OFFICER")
+	ToggleChatColorNamesByClassGroup(true, "GUILD_ACHIEVEMENT")
+	ToggleChatColorNamesByClassGroup(true, "ACHIEVEMENT")
+	ToggleChatColorNamesByClassGroup(true, "WHISPER")
+	ToggleChatColorNamesByClassGroup(true, "PARTY")
+	ToggleChatColorNamesByClassGroup(true, "PARTY_LEADER")
+	ToggleChatColorNamesByClassGroup(true, "RAID")
+	ToggleChatColorNamesByClassGroup(true, "RAID_LEADER")
+	ToggleChatColorNamesByClassGroup(true, "RAID_WARNING")
+	ToggleChatColorNamesByClassGroup(true, "BATTLEGROUND")
+	ToggleChatColorNamesByClassGroup(true, "BATTLEGROUND_LEADER")
+	ToggleChatColorNamesByClassGroup(true, "CHANNEL1")
+	ToggleChatColorNamesByClassGroup(true, "CHANNEL2")
+	ToggleChatColorNamesByClassGroup(true, "CHANNEL3")
+	ToggleChatColorNamesByClassGroup(true, "CHANNEL4")
+	ToggleChatColorNamesByClassGroup(true, "CHANNEL5")
+	ToggleChatColorNamesByClassGroup(true, "CHANNEL6")
+	ToggleChatColorNamesByClassGroup(true, "CHANNEL7")
+	ToggleChatColorNamesByClassGroup(true, "CHANNEL8")
+	ToggleChatColorNamesByClassGroup(true, "CHANNEL9")
+	ToggleChatColorNamesByClassGroup(true, "CHANNEL10")
+	ToggleChatColorNamesByClassGroup(true, "CHANNEL11")
+
+	--Adjust Chat Colors
+	--General
+	ChangeChatColor("CHANNEL1", 195/255, 230/255, 232/255)
+	--Trade
+	ChangeChatColor("CHANNEL2", 232/255, 158/255, 121/255)
+	--Local Defense
+	ChangeChatColor("CHANNEL3", 232/255, 228/255, 121/255)
+
+	if E.Chat then
+		E.Chat:PositionChat(true)
+		if E.db['RightChatPanelFaded'] then
+			RightChatToggleButton:Click()
+		end
+
+		if E.db['LeftChatPanelFaded'] then
+			LeftChatToggleButton:Click()
+		end
+	end
+end
+
+local function SetupCVars()
+	SetCVar("mapQuestDifficulty", 1)
+	SetCVar("ShowClassColorInNameplate", 1)
+	SetCVar("screenshotQuality", 10)
+	SetCVar("chatMouseScroll", 1)
+	SetCVar("chatStyle", "classic")
+	SetCVar("WholeChatWindowClickable", 0)
+	SetCVar("ConversationMode", "inline")
+	SetCVar("showTutorials", 0)
+	SetCVar("UberTooltips", 1)
+	SetCVar("threatWarning", 3)
+	SetCVar('alwaysShowActionBars', 1)
+	SetCVar('lockActionBars', 1)
+	SetCVar('SpamFilter', 0) --Blocks mmo-champion.com, dumb... ElvUI one is more effeciant anyways.
+	InterfaceOptionsActionBarsPanelPickupActionKeyDropDown:SetValue('SHIFT')
+	InterfaceOptionsActionBarsPanelPickupActionKeyDropDown:RefreshValue()
+
+	InstallStepComplete.message = L["CVars Set"]
+	InstallStepComplete:Show()
+end
+
+function E:GetColor(r, b, g, a)
+	return { r = r, b = b, g = g, a = a }
+end
+
+function E:SetupTheme(theme, noDisplayMsg)
+	local classColor = RAID_CLASS_COLORS[E.myclass]
+	E.db.theme = theme
+
+
+	--Set colors
+	if theme == "classic" then
+		E.db.general.bordercolor = E:GetColor(.31, .31, .31)
+		E.db.general.backdropcolor = E:GetColor(.1, .1, .1)
+		E.db.general.backdropfadecolor = E:GetColor(.06, .06, .06, .8)
+
+		E.db.unitframe.colors.healthclass = false
+		E.db.unitframe.colors.health = E:GetColor(.31, .31, .31)
+		E.db.unitframe.colors.auraBarBuff = E:GetColor(.31, .31, .31)
+		E.db.unitframe.colors.castColor = E:GetColor(.31, .31, .31)
+
+	elseif theme == "class" then
+		E.db.general.bordercolor = E:GetColor(classColor.r, classColor.b, classColor.g)
+		E.db.general.backdropcolor = E:GetColor(.1, .1, .1)
+		E.db.general.backdropfadecolor = E:GetColor(.06, .06, .06, .8)
+		E.db.unitframe.colors.auraBarBuff = E:GetColor(classColor.r, classColor.b, classColor.g)
+		E.db.unitframe.colors.healthclass = true
+		E.db.unitframe.colors.castColor = E:GetColor(classColor.r, classColor.b, classColor.g)
+	else
+		E.db.general.bordercolor = E:GetColor(.1, .1, .1)
+		E.db.general.backdropcolor = E:GetColor(.1, .1, .1)
+		E.db.general.backdropfadecolor = E:GetColor(.054, .054, .054, .8)
+		E.db.unitframe.colors.auraBarBuff = E:GetColor(.1, .1, .1)
+		E.db.unitframe.colors.healthclass = false
+		E.db.unitframe.colors.health = E:GetColor(.1, .1, .1)
+		E.db.unitframe.colors.castColor = E:GetColor(.1, .1, .1)
+	end
+
+	--Value Color
+	if theme == "class" then
+		E.db.general.valuecolor = E:GetColor(classColor.r, classColor.b, classColor.g)
+	else
+		E.db.general.valuecolor = E:GetColor(.09, .819, .513)
+	end
+
+	if not noDisplayMsg then
+		E:UpdateAll(true)
+	end
+
+	if InstallStatus then
+		InstallStatus:SetStatusBarColor(unpack(E['media'].rgbvaluecolor))
+
+		if InstallStepComplete and not noDisplayMsg then
+			InstallStepComplete.message = L["Theme Set"]
+			InstallStepComplete:Show()
+		end
+	end
+end
+
+function E:SetupResolution(noDataReset)
+	if not noDataReset then
+		E:ResetMovers('')
+	end
+
+	if self == 'low' then
+		if not E.db.movers then E.db.movers = {}; end
+		if not noDataReset then
+			E.db.chat.panelWidth = 400
+			E.db.chat.panelHeight = 180
+
+			E:CopyTable(E.db.actionbar, P.actionbar)
+
+			E.db.actionbar.bar1.heightMult = 2;
+			E.db.actionbar.bar2.enabled = true;
+			E.db.actionbar.bar3.enabled = false;
+			E.db.actionbar.bar5.enabled = false;
+		end
+
+		if not noDataReset then
+			E.db.auras.wrapAfter = 10;
+		end
+		E.db.general.reputation.width = 400
+		E.db.general.experience.width = 400
+		E.db.movers.ElvAB_2 = "CENTERElvUIParentBOTTOM056.18"
+
+		if not noDataReset then
+			E:CopyTable(E.db.unitframe.units, P.unitframe.units)
+
+			E.db.unitframe.fontSize = 10
+
+			E.db.unitframe.units.player.width = 200;
+			E.db.unitframe.units.player.castbar.width = 200;
+			E.db.unitframe.units.player.classbar.fill = 'fill';
+			E.db.unitframe.units.player.health.text_format = "[healthcolor][health:current]"
+
+			E.db.unitframe.units.target.width = 200;
+			E.db.unitframe.units.target.castbar.width = 200;
+			E.db.unitframe.units.target.health.text_format = '[healthcolor][health:current]'
+
+			E.db.unitframe.units.pet.power.enable = false;
+			E.db.unitframe.units.pet.width = 200;
+			E.db.unitframe.units.pet.height = 26;
+
+			E.db.unitframe.units.targettarget.debuffs.enable = false;
+			E.db.unitframe.units.targettarget.power.enable = false;
+			E.db.unitframe.units.targettarget.width = 200;
+			E.db.unitframe.units.targettarget.height = 26;
+
+			E.db.unitframe.units.boss.width = 200;
+			E.db.unitframe.units.boss.castbar.width = 200;
+			E.db.unitframe.units.arena.width = 200;
+			E.db.unitframe.units.arena.castbar.width = 200;
+		end
+
+		E.db.movers.ElvUF_PlayerMover = "BOTTOMElvUIParentBOTTOM-106135"
+		E.db.movers.ElvUF_TargetTargetMover = "BOTTOMElvUIParentBOTTOM10680"
+		E.db.movers.ElvUF_TargetMover = "BOTTOMElvUIParentBOTTOM106135"
+		E.db.movers.ElvUF_PetMover = "BOTTOMElvUIParentBOTTOM-10680"
+		E.db.movers.ElvUF_FocusMover = "BOTTOMElvUIParentBOTTOM310332"
+
+		E.db.lowresolutionset = true;
+	elseif not noDataReset then
+		E.db.chat.panelWidth = P.chat.panelWidth
+		E.db.chat.panelHeight = P.chat.panelHeight
+
+		E:CopyTable(E.db.actionbar, P.actionbar)
+		E:CopyTable(E.db.unitframe.units, P.unitframe.units)
+
+		E.db.auras.wrapAfter = P.auras.wrapAfter;
+		E.db.general.reputation.width = P.general.reputation.width
+		E.db.general.experience.width = P.general.experience.width
+
+		E.db.lowresolutionset = nil;
+	end
+
+	if not noDataReset and E.db.theme then
+		E:SetupTheme(E.db.theme, true)
+	end
+
+	E:UpdateAll(true)
+
+	if InstallStepComplete and not noDataReset then
+		InstallStepComplete.message = L["Resolution Style Set"]
+		InstallStepComplete:Show()
+	end
+end
+
+function E:SetupLayout(layout, noDataReset)
+	--Unitframes
+	if not noDataReset then
+		E:CopyTable(E.db.unitframe.units, P.unitframe.units)
+	end
+	if layout == 'healer' then
+		if not IsAddOnLoaded('Clique') then
+			E:Print(L['Using the healer layout it is highly recommended you download the addon Clique to work side by side with ElvUI.'])
+		end
+
+		if not noDataReset then
+			E.db.unitframe.units.party.health.frequentUpdates = true;
+			E.db.unitframe.units.raid25.health.frequentUpdates = true;
+			E.db.unitframe.units.raid40.health.frequentUpdates = true;
+
+			E.db.unitframe.units.raid40.height = 36;
+			E.db.unitframe.units.raid40.health.text = true;
+			E.db.unitframe.units.raid40.name.position = 'TOP';
+			E.db.unitframe.units.raid40.roleIcon.enable = true;
+			E.db.unitframe.units.boss.width = 200;
+			E.db.unitframe.units.boss.castbar.width = 200;
+			E.db.unitframe.units.arena.width = 200;
+			E.db.unitframe.units.arena.castbar.width = 200;
+
+			E.db.unitframe.units.party.point = 'LEFT';
+			E.db.unitframe.units.party.xOffset = 5;
+			E.db.unitframe.units.party.healPrediction = true;
+			E.db.unitframe.units.party.columnAnchorPoint = 'LEFT';
+			E.db.unitframe.units.party.width = 80;
+			E.db.unitframe.units.party.height = 52;
+			E.db.unitframe.units.party.health.text_format = "[healthcolor][health:deficit]"
+			E.db.unitframe.units.party.health.position = 'BOTTOM';
+			E.db.unitframe.units.party.health.orientation = 'VERTICAL';
+			E.db.unitframe.units.party.name.position = 'TOP';
+			E.db.unitframe.units.party.name.length = "SHORT";
+			E.db.unitframe.units.party.debuffs.anchorPoint = 'BOTTOMLEFT';
+			E.db.unitframe.units.party.debuffs.initialAnchor = 'TOPLEFT';
+			E.db.unitframe.units.party.debuffs.useFilter = 'Blacklist';
+			E.db.unitframe.units.party.debuffs.sizeOverride = 0;
+			E.db.unitframe.units.party.petsGroup.enable = true;
+			E.db.unitframe.units.party.petsGroup.width = 80;
+			E.db.unitframe.units.party.petsGroup.initialAnchor = 'BOTTOM';
+			E.db.unitframe.units.party.petsGroup.anchorPoint = 'TOP';
+			E.db.unitframe.units.party.petsGroup.xOffset = 0;
+			E.db.unitframe.units.party.petsGroup.yOffset = 1;
+			E.db.unitframe.units.party.targetsGroup.enable = false;
+			E.db.unitframe.units.party.targetsGroup.width = 80;
+			E.db.unitframe.units.party.targetsGroup.initialAnchor = 'BOTTOM';
+			E.db.unitframe.units.party.targetsGroup.anchorPoint = 'TOP';
+			E.db.unitframe.units.party.targetsGroup.xOffset = 0;
+			E.db.unitframe.units.party.targetsGroup.yOffset = 1;
+
+			E.db.unitframe.units.raid25.healPrediction = true;
+			E.db.unitframe.units.raid25.health.orientation = 'VERTICAL';
+
+			E.db.unitframe.units.raid40.healPrediction = true;
+			E.db.unitframe.units.raid40.health.orientation = 'VERTICAL';
+		end
+
+		if not E.db.movers then E.db.movers = {}; end
+		if E.db.lowresolutionset then
+			E.db.movers.ElvUF_PlayerMover = "BOTTOMElvUIParentBOTTOM-305242"
+			E.db.movers.ElvUF_TargetMover = "BOTTOMElvUIParentBOTTOM305242"
+			E.db.movers.ElvUF_Raid40Mover = "BOTTOMElvUIParentBOTTOM080"
+			E.db.movers.ElvUF_Raid25Mover = "BOTTOMElvUIParentBOTTOM080"
+			E.db.movers.ElvUF_Raid10Mover = "BOTTOMElvUIParentBOTTOM080"
+			E.db.movers.ElvUF_TargetTargetMover = "BOTTOMElvUIParentBOTTOM305187"
+			E.db.movers.ElvUF_PartyMover = "BOTTOMElvUIParentBOTTOM0104"
+			E.db.movers.ElvUF_PetMover = "BOTTOMElvUIParentBOTTOM-305187"
+			E.db.movers.ElvUF_FocusMover = "BOTTOMElvUIParentBOTTOM310432"
+
+		else
+			E.db.movers.ElvUF_PlayerMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT464242"
+			E.db.movers.ElvUF_TargetMover = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-464242"
+			E.db.movers.ElvUF_Raid40Mover = "BOTTOMElvUIParentBOTTOM050"
+			E.db.movers.ElvUF_Raid25Mover = "BOTTOMElvUIParentBOTTOM050"
+			E.db.movers.ElvUF_Raid10Mover = "BOTTOMElvUIParentBOTTOM050"
+			E.db.movers.ElvUF_TargetTargetMover = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-464151"
+			E.db.movers.ElvUF_PartyMover = "BOTTOMElvUIParentBOTTOM074"
+			E.db.movers.ElvUF_PetMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT464151"
+			E.db.movers.ElvUF_FocusMover = "BOTTOMElvUIParentBOTTOM280332"
+		end
+	elseif E.db.lowresolutionset then
+		if not E.db.movers then E.db.movers = {}; end
+		E.db.movers.ElvUF_PlayerMover = "BOTTOMElvUIParentBOTTOM-106135"
+		E.db.movers.ElvUF_TargetMover = "BOTTOMElvUIParentBOTTOM106135"
+		E.db.movers.ElvUF_TargetTargetMover = "BOTTOMElvUIParentBOTTOM10680"
+		E.db.movers.ElvUF_PetMover = "BOTTOMElvUIParentBOTTOM-10680"
+		E.db.movers.ElvUF_FocusMover = "BOTTOMElvUIParentBOTTOM310332"
+	else
+		if not noDataReset then
+			E:ResetMovers('')
+		end
+	end
+
+	if E.db.lowresolutionset and not noDataReset then
+		E.db.unitframe.units.player.width = 200;
+		E.db.unitframe.units.player.castbar.width = 200;
+		E.db.unitframe.units.player.classbar.fill = 'fill';
+
+		E.db.unitframe.units.target.width = 200;
+		E.db.unitframe.units.target.castbar.width = 200;
+
+		E.db.unitframe.units.pet.power.enable = false;
+		E.db.unitframe.units.pet.width = 200;
+		E.db.unitframe.units.pet.height = 26;
+
+		E.db.unitframe.units.targettarget.debuffs.enable = false;
+		E.db.unitframe.units.targettarget.power.enable = false;
+		E.db.unitframe.units.targettarget.width = 200;
+		E.db.unitframe.units.targettarget.height = 26;
+
+		E.db.unitframe.units.boss.width = 200;
+		E.db.unitframe.units.boss.castbar.width = 200;
+		E.db.unitframe.units.arena.width = 200;
+		E.db.unitframe.units.arena.castbar.width = 200;
+	end
+
+	if not E.db.lowresolutionset and (layout == 'dpsCaster' or (layout == 'dpsMelee' and E.myclass == 'HUNTER')) then
+		if not E.db.movers then E.db.movers = {}; end
+		E.db.movers.ElvUF_PlayerCastbarMover = "BOTTOMElvUIParentBOTTOM0180"
+	--[[elseif not E.db.lowresolutionset and layout == 'tank' then --Not sure if i want to keep this.
+		if not E.db.movers then E.db.movers = {}; end
+		E.db.movers.ElvUF_TargetCastbarMover = "BOTTOMElvUIParentBOTTOM0180"]]
+	end
+
+	--Datatexts
+	if not noDataReset then
+		E:CopyTable(E.db.datatexts.panels, P.datatexts.panels)
+		if layout == 'tank' then
+			E.db.datatexts.panels.LeftChatDataPanel.left = 'Armor';
+			E.db.datatexts.panels.LeftChatDataPanel.right = 'Avoidance';
+		elseif layout == 'healer' or layout == 'dpsCaster' then
+			E.db.datatexts.panels.LeftChatDataPanel.left = 'Spell/Heal Power';
+			E.db.datatexts.panels.LeftChatDataPanel.right = 'Haste';
+		else
+			E.db.datatexts.panels.LeftChatDataPanel.left = 'Attack Power';
+			E.db.datatexts.panels.LeftChatDataPanel.right = 'Crit Chance';
+		end
+
+		if InstallStepComplete then
+			InstallStepComplete.message = L["Layout Set"]
+			InstallStepComplete:Show()
+		end
+	end
+
+	E.db.layoutSet = layout
+
+	if not noDataReset and E.db.theme then
+		E:SetupTheme(E.db.theme, true)
+	end
+
+	E:UpdateAll(true)
+	local DT = E:GetModule('DataTexts')
+	DT:LoadDataTexts()
+end
+
+
+local function SetupAuras(style)
+	E:CopyTable(E.db.unitframe.units.player.buffs, P.unitframe.units.player.buffs)
+	E:CopyTable(E.db.unitframe.units.player.debuffs, P.unitframe.units.player.debuffs)
+	E:CopyTable(E.db.unitframe.units.player.aurabar, P.unitframe.units.player.aurabar)
+
+	E:CopyTable(E.db.unitframe.units.target.buffs, P.unitframe.units.target.buffs)
+	E:CopyTable(E.db.unitframe.units.target.debuffs, P.unitframe.units.target.debuffs)
+	E:CopyTable(E.db.unitframe.units.target.aurabar, P.unitframe.units.target.aurabar)
+	E.db.unitframe.units.target.smartAuraDisplay = P.unitframe.units.target.smartAuraDisplay
+
+	E:CopyTable(E.db.unitframe.units.focus.buffs, P.unitframe.units.focus.buffs)
+	E:CopyTable(E.db.unitframe.units.focus.debuffs, P.unitframe.units.focus.debuffs)
+	E:CopyTable(E.db.unitframe.units.focus.aurabar, P.unitframe.units.focus.aurabar)
+	E.db.unitframe.units.focus.smartAuraDisplay = P.unitframe.units.focus.smartAuraDisplay
+
+	if not style then
+		--PLAYER
+		E.db.unitframe.units.player.buffs.enable = true;
+		E.db.unitframe.units.player.buffs.attachTo = 'FRAME';
+		E.db.unitframe.units.player.buffs.noDuration = 'NONE';
+
+		E.db.unitframe.units.player.debuffs.attachTo = 'BUFFS';
+
+		E.db.unitframe.units.player.aurabar.enable = false;
+
+		--TARGET
+		E.db.unitframe.units.target.smartAuraDisplay = 'DISABLED';
+		E.db.unitframe.units.target.debuffs.enable = true;
+		E.db.unitframe.units.target.aurabar.enable = false;
+	elseif style == 'classic' then
+		--seriosly is this fucking hard??
+		E.db.unitframe.units.target.smartAuraDisplay = 'DISABLED';
+		E.db.unitframe.units.target.buffs.playerOnly = 'NONE';
+		E.db.unitframe.units.target.debuffs.enable = true;
+		E.db.unitframe.units.target.aurabar.attachTo = 'DEBUFFS';
+	end
+
+	E:GetModule('UnitFrames'):Update_AllFrames()
+	if InstallStepComplete then
+		InstallStepComplete.message = L["Auras Set"]
+		InstallStepComplete:Show()
+	end
+end
+
+
+function E:DarthSetup() --The function to switch from classic ElvUI settings to Darth's
+	InstallStepComplete.message = L["Darth's Defaults Set"]
+	InstallStepComplete:Show()
+	if not E.db.movers then E.db.movers = {}; end
+
+	layout = E.db.layoutSet --To know if some sort of layout was choosed before
+
+	--General options--
+	E.db.general.stickyFrames = false
+	E.db.general.autoRepair = "PLAYER"
+	E.db.general.vendorGrays = true
+	E.db.general.fontsize = 10
+	E.db.general.minimap.locationText = 'SHOW'
+	E.db.general.experience.textFormat = 'CURMAX'
+	E.db.general.experience.textSize = 10
+	E.db.general.reputation.textFormat = 'CURMAX'
+	E.db.general.reputation.textSize = 10
+	E.db.general.threat.enable = false
+	E.db.general.totems.spacing = 2
+	E.db.general.totems.growthDirection = "HORIZONTAL"
+	E.db.general.totems.size = 24
+
+	--Bags--
+	E.db.bags.bagSize = 25
+	E.db.bags.bankSize = 25
+	E.db.bags.sortInverted = false
+	E.db.bags.alignToChat = false
+	E.db.bags.bagWidth = 633
+	E.db.bags.bankWidth = 633
+	E.db.bags.yOffset = 225
+	E.db.bags.currencyFormat = "ICON"
+	E.db.bags.growthDirection = "HORIZONTAL"
+
+	--NamePlate--
+	E.db.nameplate.healthtext = 'CURRENT_PERCENT'
+	E.db.nameplate.lowHealthWarning = 'NONE'
+	E.db.nameplate.lowHealthWarningThreshold = .20
+
+	--Auras--
+	E.db.auras.font = "ElvUI Font"
+	E.db.auras.fontOutline = "OUTLINE"
+	E.db.auras.wrapAfter = 18
+
+	--Chat--
+	E.db.chat.editboxhistory = 10
+	E.db.chat.emotionIcons = false
+	E.db.chat.whisperSound = 'None'
+	E.db.chat.panelHeight = 227
+	if E.db.lowresolutionset then
+		E.db.chat.panelWidth = 400
+	else
+		E.db.chat.panelWidth = 444
+	end
+	E.db.sle.chat.fade = true
+
+	--Datatexts--
+	E.db.datatexts.font = "ElvUI Pixel"
+	E.db.datatexts.fontSize = 11
+	E.db.datatexts.time24 = true
+	E.db.sle.datatext.top.enabled = true
+	E.db.sle.datatext.bottom.enabled = true
+	if E.db.lowresolutionset then
+		E.db.sle.datatext.dp1.enabled = false
+		E.db.sle.datatext.dp2.enabled = false
+		E.db.sle.datatext.dp3.enabled = false
+		E.db.sle.datatext.dp4.enabled = false
+		E.db.sle.datatext.dp5.enabled = false
+		E.db.sle.datatext.dp6.enabled = false
+		E.db.sle.datatext.chatleft.width = 384
+		E.db.sle.datatext.chatright.width = 384
+		E.db.sle.datatext.bottom.width = E.screenwidth/3 + 52
+	else
+		E.db.sle.datatext.dp1.enabled = true
+		E.db.sle.datatext.dp2.enabled = true
+		E.db.sle.datatext.dp3.enabled = true
+		E.db.sle.datatext.dp4.enabled = true
+		E.db.sle.datatext.dp5.enabled = true
+		E.db.sle.datatext.dp6.enabled = true
+		E.db.sle.datatext.chatleft.width = 428
+		E.db.sle.datatext.chatright.width = 428
+		E.db.sle.datatext.bottom.width = E.screenwidth/10 - 4
+	end
+
+	if E.db.lowresolutionset then
+		E.db.datatexts.panels.LeftChatDataPanel.left = 'Bags';
+		E.db.datatexts.panels.LeftChatDataPanel.middle = 'Gold';
+		E.db.datatexts.panels.LeftChatDataPanel.right = 'Durability';
+	else
+		E.db.datatexts.panels.LeftChatDataPanel.right = 'Friends';
+		E.db.datatexts.panels.LeftChatDataPanel.left = 'Call to Arms';
+		E.db.datatexts.panels.LeftChatDataPanel.middle = 'Durability';
+	end
+	E.db.datatexts.panels.LeftMiniPanel = 'Time';
+	E.db.datatexts.panels.RightMiniPanel = 'Guild';
+
+	if layout == 'tank' then
+		E.db.datatexts.panels.DP_6.left = 'Avoidance';
+		E.db.datatexts.panels.DP_6.middle = 'Vengeance';
+		E.db.datatexts.panels.DP_6.right = 'Expertise';
+		if E.db.lowresolutionset then
+			E.db.datatexts.panels.RightChatDataPanel.left = 'Avoidance';
+			E.db.datatexts.panels.RightChatDataPanel.middle = 'Vengeance';
+			E.db.datatexts.panels.RightChatDataPanel.right = 'Expertise';
+		else
+			E.db.datatexts.panels.RightChatDataPanel.left = 'Hit Rating';
+			E.db.datatexts.panels.RightChatDataPanel.middle = 'Mastery';
+			E.db.datatexts.panels.RightChatDataPanel.right = 'Spec Switch';
+		end
+		E.db.datatexts.panels.DP_5.right = 'Armor';
+	elseif layout == 'healer' then
+		E.db.datatexts.panels.DP_6.left = 'Spell/Heal Power';
+		E.db.datatexts.panels.DP_6.middle = 'Haste';
+		E.db.datatexts.panels.DP_6.right = 'Crit Chance';
+		if E.db.lowresolutionset then
+			E.db.datatexts.panels.RightChatDataPanel.left = 'Spell/Heal Power';
+			E.db.datatexts.panels.RightChatDataPanel.middle = 'Crit Chance';
+			E.db.datatexts.panels.RightChatDataPanel.right = 'Mana Regen';
+		else
+			E.db.datatexts.panels.RightChatDataPanel.left = 'Mana Regen';
+			E.db.datatexts.panels.RightChatDataPanel.middle = 'Mastery';
+			E.db.datatexts.panels.RightChatDataPanel.right = 'Spec Switch';
+		end
+		E.db.datatexts.panels.DP_5.right = 'Armor';
+	elseif layout == 'dpsCaster' then
+		E.db.datatexts.panels.DP_6.left = 'Spell/Heal Power';
+		E.db.datatexts.panels.DP_6.middle = 'Haste';
+		E.db.datatexts.panels.DP_6.right = 'Crit Chance';
+		if E.db.lowresolutionset then
+			E.db.datatexts.panels.RightChatDataPanel.left = 'Spell/Heal Power';
+			E.db.datatexts.panels.RightChatDataPanel.middle = 'Haste';
+			E.db.datatexts.panels.RightChatDataPanel.right = 'Crit Chance';
+		else
+			E.db.datatexts.panels.RightChatDataPanel.left = 'Hit Rating';
+			E.db.datatexts.panels.RightChatDataPanel.middle = 'Mastery';
+			E.db.datatexts.panels.RightChatDataPanel.right = 'Spec Switch';
+		end
+		E.db.datatexts.panels.DP_5.right = 'Armor';
+	else
+		E.db.datatexts.panels.DP_6.left = 'Attack Power';
+		E.db.datatexts.panels.DP_6.middle = 'Haste';
+		E.db.datatexts.panels.DP_6.right = 'Crit Chance';
+		if E.db.lowresolutionset then
+			E.db.datatexts.panels.RightChatDataPanel.left = 'Attack Power';
+			E.db.datatexts.panels.RightChatDataPanel.middle = 'Haste';
+			E.db.datatexts.panels.RightChatDataPanel.right = 'Crit Chance';
+		else
+			E.db.datatexts.panels.RightChatDataPanel.left = 'Hit Rating';
+			E.db.datatexts.panels.RightChatDataPanel.middle = 'Mastery';
+			E.db.datatexts.panels.RightChatDataPanel.right = 'Spec Switch';
+		end
+		E.db.datatexts.panels.DP_5.right = 'Expertise';
+	end
+
+	--Unitframes--
+	E.db.unitframe.smoothbars = false
+	E.db.unitframe.font = "ElvUI Font"
+	E.db.unitframe.fontsize = 9
+	E.db.unitframe.fontOutline = 'OUTLINE'
+	E.db.unitframe.colors.castColor = {
+								["b"] = 0.3098039215686275,
+								["g"] = 0.792156862745098,
+								["r"] = 0.8274509803921568,
+							}
+	UF:Update_AllFrames()
+	if layout == "healer" then
+		E.db.unitframe.debuffHighlighting = true
+	else
+		E.db.unitframe.debuffHighlighting = false
+	end
+	E.db.unitframe.smartRaidFilter = false
+	E.db.unitframe.colors.healthclass = true
+	E.db.unitframe.colors.colorhealthbyvalue = false
+		--Setting player frame
+		E.db.unitframe.units.player.width = 200
+		if layout == "healer" then
+			E.db.unitframe.units.player.lowmana = 30;
+		else
+			E.db.unitframe.units.player.lowmana = 0;
+		end
+		E.db.unitframe.units.player.health.position = 'BOTTOMRIGHT';
+		E.db.unitframe.units.player.health.text_format = "[healthcolor][health:current-percent:sl]"
+		E.db.unitframe.units.player.power.text_format = "[powercolor][power:current:sl]";
+		E.db.unitframe.units.player.name.text_format = "[name:medium]";
+		E.db.unitframe.units.player.name.position = 'TOPLEFT';
+		E.db.unitframe.units.player.pvp.text_format = "||cFFB04F4F[pvptimer]||r"
+		E.db.unitframe.units.player.pvp.position = "BOTTOMLEFT"
+		E.db.unitframe.units.player.portrait.enable = true
+		E.db.unitframe.units.player.portrait.camDistanceScale = 1.5;
+		E.db.unitframe.units.player.debuffs.enable = false;
+		E.db.unitframe.units.player.castbar.format = 'CURRENTMAX';
+		E.db.unitframe.units.player.castbar.width = 237
+		E.db.unitframe.units.player.classbar.fill = 'fill'
+		E.db.unitframe.units.player.classbar.height = 8
+		E.db.unitframe.units.player.aurabar.enable = false
+		--Setting target frame
+		E.db.unitframe.units.target.width = 200
+		E.db.unitframe.units.target.smartAuraDisplay = "DISABLED"
+		E.db.unitframe.units.target.hideonnpc = false;
+		E.db.unitframe.units.target.health.position = 'BOTTOMRIGHT';
+		E.db.unitframe.units.target.power.position = 'RIGHT';
+		E.db.unitframe.units.target.power.hideonnpc = false;
+		E.db.unitframe.units.target.power.text_format = "[powercolor][power:current:sl]"
+		E.db.unitframe.units.target.name.text_format = "[name:medium] [smartlevel] [shortclassification]";
+		E.db.unitframe.units.target.name.position = 'TOPLEFT';
+		E.db.unitframe.units.target.portrait.enable = true
+		E.db.unitframe.units.target.portrait.camDistanceScale = 1.5;
+		E.db.unitframe.units.target.buffs.perrow = 9;
+		E.db.unitframe.units.target.buffs.numrows = 2;
+		E.db.unitframe.units.target.buffs.playerOnly = "NONE";
+		E.db.unitframe.units.target.buffs.noDuration = "NONE";
+		E.db.unitframe.units.target.buffs.anchorPoint = 'TOPLEFT';
+		E.db.unitframe.units.target.buffs.clickThrough = false
+		E.db.unitframe.units.target.buffs.noConsolidated = "NONE"
+		E.db.unitframe.units.target.debuffs.perrow = 9;
+		E.db.unitframe.units.target.debuffs.useBlacklis = "NONE";
+		E.db.unitframe.units.target.debuffs.playerOnly = "NONE";
+		E.db.unitframe.units.target.debuffs.enable = true
+		E.db.unitframe.units.target.debuffs.clickThrough = false
+		E.db.unitframe.units.target.castbar.format = 'CURRENTMAX';
+		if layout == "healer" then
+			E.db.unitframe.units.target.castbar.width = 237
+		else
+			E.db.unitframe.units.target.castbar.width = 200
+		end
+		E.db.unitframe.units.target.aurabar.enable = false
+		--Target of Target
+		E.db.unitframe.units.targettarget.height = 26
+		if layout == "healer" then
+			E.db.unitframe.units.targettarget.width = 115
+		else
+			E.db.unitframe.units.targettarget.width = 120
+		end
+		E.db.unitframe.units.targettarget.name.text_format = "[name:medium]"
+		E.db.unitframe.units.targettarget.debuffs.enable = false
+		--Focus
+		E.db.unitframe.units.focus.height = 42
+		E.db.unitframe.units.focus.width = 179
+		E.db.unitframe.units.focus.health.position = 'BOTTOMRIGHT'
+		E.db.unitframe.units.focus.health.text_format = "[healthcolor][health:current-percent:sl]"
+		E.db.unitframe.units.focus.power.text_format = "[powercolor][power:current:sl]"
+		E.db.unitframe.units.focus.power.position = "RIGHT"
+		E.db.unitframe.units.focus.name.text_format = "[name:medium]"
+		E.db.unitframe.units.focus.name.position = 'TOPLEFT'
+		E.db.unitframe.units.focus.debuffs.perrow = 8
+		E.db.unitframe.units.focus.debuffs.anchorPoint = "TOPLEFT"
+		E.db.unitframe.units.focus.castbar.format = 'CURRENTMAX'
+		E.db.unitframe.units.focus.castbar.width = 179
+		--Focus Target
+		E.db.unitframe.units.focustarget.name.text_format = "[name:medium]"
+		E.db.unitframe.units.focustarget.enable = true
+		E.db.unitframe.units.focustarget.height = 34
+		E.db.unitframe.units.focustarget.width = 179
+		--Pet
+		E.db.unitframe.units.pet.name.text_format = "[name:medium]"
+		if layout == "healer" then
+			E.db.unitframe.units.pet.width = 115
+		else
+			E.db.unitframe.units.pet.width = 128
+		end
+		--Pet Target
+		E.db.unitframe.units.pettarget.name.text_format = "[name:medium]"
+		E.db.unitframe.units.pettarget.enable = true
+		if layout == "healer" then
+			E.db.unitframe.units.pettarget.width = 115
+		else
+			E.db.unitframe.units.pettarget.width = 119
+		end
+		--Party
+		if layout == "healer" then
+			E.db.unitframe.units.party.point = "LEFT"
+			E.db.unitframe.units.party.xOffset = 5
+			E.db.unitframe.units.party.debuffs.perrow = 3
+			E.db.unitframe.units.party.debuffs.anchorPoint = "BOTTOMLEFT"
+			E.db.unitframe.units.party.debuffs.useFilter = "Blacklist"
+			E.db.unitframe.units.party.debuffs.initialAnchor = "TOPLEFT"
+			E.db.unitframe.units.party.roleIcon.position = "RIGHT"
+			E.db.unitframe.units.party.width = 80
+			E.db.unitframe.units.party.height = 52
+			E.db.unitframe.units.party.healPrediction = true
+			E.db.unitframe.units.party.health.text_format = "[healthcolor][health:deficit]"
+			E.db.unitframe.units.party.health.position = "CENTER"
+			E.db.unitframe.units.party.health.frequentUpdates = true
+			E.db.unitframe.units.party.health.orientation = "VERTICAL"
+		else
+			E.db.unitframe.units.party.debuffs.perrow = 4
+			E.db.unitframe.units.party.roleIcon.position = "TOPRIGHT"
+			E.db.unitframe.units.party.health.position = "BOTTOMLEFT"
+		end
+		E.db.unitframe.units.party.debuffs.sizeOverride = 26
+		E.db.unitframe.units.party.buffIndicator.colorIcons = false
+		E.db.unitframe.units.party.power.height = 8
+		E.db.unitframe.units.party.power.text_format = ""
+		E.db.unitframe.units.party.name.position = "TOP"
+		E.db.unitframe.units.party.name.text_format = "[name:medium] [difficultycolor][smartlevel]"
+		--Raid 10
+		if layout == "healer" then
+			E.db.unitframe.units.raid10.health.frequentUpdates = true
+			E.db.unitframe.units.raid10.health.text_format = "[healthcolor][health:dificit]"
+			E.db.unitframe.units.raid10.health.orientation = "VERTICAL"
+			E.db.unitframe.units.raid10.health.position = "CENTER"
+		else
+			E.db.unitframe.units.raid10.health.text_format = "[healthcolor][health:current]"
+			E.db.unitframe.units.raid10.columnAnchorPoint = "LEFT"
+			E.db.unitframe.units.raid10.point = "TOP"
+		end
+		E.db.unitframe.units.raid10.name.text_format = "[name:medium]"
+		E.db.unitframe.units.raid10.buffIndicator.colorIcons = false
+		E.db.unitframe.units.raid10.rdebuffs.size = 22
+		E.db.unitframe.units.raid10.power.height = 8
+		E.db.unitframe.units.raid10.power.text_format = ""
+		E.db.unitframe.units.raid10.health.position = "BOTTOMLEFT"
+		E.db.unitframe.units.raid10.health.text_format = "[healthcolor][health:current]"
+		--Raid 25
+		if layout == "healer" then
+			E.db.unitframe.units.raid25.health.text_format = "[healthcolor][health:deficit]"
+			E.db.unitframe.units.raid25.health.frequentUpdates = true
+			E.db.unitframe.units.raid25.health.orientation = "VERTICAL"
+			E.db.unitframe.units.raid25.health.position = "CENTER"
+		else
+			E.db.unitframe.units.raid25.point = "TOP"
+			E.db.unitframe.units.raid25.columnAnchorPoint = "LEFT"
+			E.db.unitframe.units.raid25.health.text_format = ""
+		end
+		E.db.unitframe.units.raid25.buffIndicator.colorIcons = false
+		E.db.unitframe.units.raid25.name.text_format = "[name:medium]"
+		E.db.unitframe.units.raid25.rdebuffs.size = 22
+		E.db.unitframe.units.raid25.power.height = 8
+		E.db.unitframe.units.raid25.power.text_format = ""
+		--Raid 40
+		if layout == "healer" then
+			E.db.unitframe.units.raid40.health.frequentUpdates = true
+			E.db.unitframe.units.raid40.health.text_format = ""
+			E.db.unitframe.units.raid40.health.orientation = "VERTICAL"
+		else
+			E.db.unitframe.units.raid40.health.text_format = ""
+		end
+		E.db.unitframe.units.raid40.name.text_format = "[name:short]"
+		E.db.unitframe.units.raid40.buffIndicator.colorIcons = false
+
+		--Tank
+		if layout == "healer" then
+			E.db.unitframe.units.tank.enable = true
+			E.db.unitframe.units.tank.targetsGroup.enable = false
+		else
+			E.db.unitframe.units.tank.enable = false
+		end
+		--Assist
+		E.db.unitframe.units.assist.enable = false
+
+		--Arena
+		E.db.unitframe.units.arena.width = 200
+		E.db.unitframe.units.arena.height = 40
+		E.db.unitframe.units.arena.growthDirection = 'DOWN'
+		E.db.unitframe.units.arena.health.position = 'BOTTOMRIGHT'
+		E.db.unitframe.units.arena.health.text_format = "[healthcolor][health:current-percent:sl]"
+		E.db.unitframe.units.arena.power.text_format = "[powercolor][power:current:sl]"
+		E.db.unitframe.units.arena.name.text_format = "[name:long]"
+		E.db.unitframe.units.arena.name.position = 'TOPLEFT'
+		E.db.unitframe.units.arena.buffs.enable = false
+		E.db.unitframe.units.arena.debuffs.enable = false
+		E.db.unitframe.units.arena.castbar.format = 'CURRENTMAX'
+		E.db.unitframe.units.arena.castbar.height = 15
+		E.db.unitframe.units.arena.castbar.width = 200
+		E.db.unitframe.units.arena.castbar.color = {
+								["r"] = 0.8274509803921568,
+								["g"] = 0.792156862745098,
+								["b"] = 0.3098039215686275,
+							}
+		--Boss
+		E.db.unitframe.units.boss.width = 200
+		E.db.unitframe.units.boss.height = 40
+		E.db.unitframe.units.boss.growthDirection = 'DOWN'
+		E.db.unitframe.units.boss.health.position = 'BOTTOMRIGHT'
+		E.db.unitframe.units.boss.health.text_format = "[healthcolor][health:current-percent]"
+		E.db.unitframe.units.boss.power.height = 10
+		E.db.unitframe.units.boss.power.text_format = "[powercolor][power:current:sl]"
+		E.db.unitframe.units.boss.name.text_format = "[name:long]"
+		E.db.unitframe.units.boss.name.position = 'TOPLEFT'
+		E.db.unitframe.units.boss.buffs.enable = false
+		E.db.unitframe.units.boss.debuffs.enable = false
+		E.db.unitframe.units.boss.castbar.format = 'CURRENTMAX'
+		E.db.unitframe.units.boss.castbar.height = 15
+		E.db.unitframe.units.boss.castbar.width = 200
+		E.db.unitframe.units.boss.castbar.color = {
+								["r"] = 0.8274509803921568,
+								["g"] = 0.792156862745098,
+								["b"] = 0.3098039215686275,
+							}
+		--Power text
+		E.db.sle.powtext = true
+
+	--Actionbars
+	E.db.actionbar.hotkeytext = false
+	E.db.actionbar.keyDown = false
+	E.db.actionbar.bar1.point = "TOPLEFT"
+	E.db.actionbar.bar1.buttonsPerRow = 3
+	E.db.actionbar.bar1.buttonsize = 26
+	E.db.actionbar.bar2.enabled = true
+	E.db.actionbar.bar2.point = "TOPLEFT"
+	E.db.actionbar.bar2.backdrop = true
+	E.db.actionbar.bar2.buttonsPerRow = 3
+	E.db.actionbar.bar2.buttonsize = 26
+	E.db.actionbar.bar2.visibility = "[petbattle] hide; show"
+	E.db.actionbar.bar3.point = "TOPLEFT"
+	E.db.actionbar.bar3.buttons = 12
+	E.db.actionbar.bar3.buttonsPerRow = 3
+	E.db.actionbar.bar3.visibility = "[petbattle] hide; show"
+	E.db.actionbar.bar3.buttonsize = 26
+	E.db.actionbar.bar4.enabled = false
+	E.db.actionbar.bar5.enabled = false
+	E.db.actionbar.microbar.enabled = true
+	E.db.actionbar.microbar.buttonsPerRow = 2
+	E.db.actionbar.microbar.alpha = 0.2
+	E.db.actionbar.stanceBar.buttonspacing = 2
+	E.db.actionbar.stanceBar.backdrop = true
+	E.db.actionbar.stanceBar.buttonsPerRow = 1
+	E.db.actionbar.stanceBar.buttonsize = 22
+	E.db.actionbar.barPet.point = "TOPLEFT"
+	E.db.actionbar.barPet.buttonspacing = 1
+	E.db.actionbar.barPet.backdrop = false
+	E.db.actionbar.barPet.buttonsPerRow = 5
+	E.db.actionbar.barPet.buttonsize = 20
+
+	--Raid marks--
+	E.db.sle.marks.growth = "LEFT"
+
+	--Background Frames--
+	E.db.sle.backgrounds.right.enabled = true
+	E.db.sle.backgrounds.right.pethide = false
+	E.db.sle.backgrounds.right.xoffset = 70
+	E.db.sle.backgrounds.left.enabled = true
+	E.db.sle.backgrounds.left.pethide = false
+	E.db.sle.backgrounds.left.xoffset = -70
+
+	--Raid utility--
+	E.db.sle.raidutil.ypos = 1050
+
+	--Exp/Rep Bars--
+	E.db.sle.exprep.explong = true
+	E.db.sle.exprep.replong = true
+
+	--Combat icon--
+	E.db.sle.combatico.pos = 'TOPRIGHT'
+
+	--UI buttons--
+	E.db.sle.uibuttons.enable = true
+	E.db.sle.uibuttons.size = 14
+	E.db.sle.uibuttons.position = "uib_hor"
+
+	--Moving stuff--
+	if layout == "healer" then
+		E.db.movers.PetAB = "BOTTOMLEFTUIParentBOTTOMLEFT633141"
+		E.db.movers.ElvUF_Raid10Mover = "BOTTOMRIGHTUIParentBOTTOMRIGHT-754215"
+		E.db.movers.ElvUF_Raid25Mover = "BOTTOMRIGHTUIParentBOTTOMRIGHT-754215"
+		E.db.movers.ExperienceBarMover = "TOPLEFTUIParentTOPLEFT722-21"
+		E.db.movers.ElvUF_TargetMover = "BOTTOMRIGHTUIParentBOTTOMRIGHT-549249"
+		E.db.movers.ElvUF_Raid40Mover = "BOTTOMRIGHTUIParentBOTTOMRIGHT-754215"
+		E.db.movers.ElvUF_PetMover = "BOTTOMLEFTUIParentBOTTOMLEFT634212"
+		E.db.movers.ElvUF_TargetTargetMover = "BOTTOMRIGHTUIParentBOTTOMRIGHT-634222"
+		E.db.movers.ElvUF_PetTargetMover = "BOTTOMLEFTUIParentBOTTOMLEFT634185"
+		E.db.movers.ElvUF_PlayerCastbarMover = "BOTTOMLEFTUIParentBOTTOMLEFT841169"
+		E.db.movers.ElvUF_TankMover = "BOTTOMLEFTUIParentBOTTOMLEFT428249"
+		E.db.movers.ElvUF_PlayerMover = "BOTTOMLEFTUIParentBOTTOMLEFT549249"
+		E.db.movers.ElvUF_PartyMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT750251"
+		E.db.movers.ElvUF_TargetCastbarMover = "BOTTOMLEFTUIParentBOTTOMLEFT841192"
+		E.db.movers.TotemBarMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT547302"
+	else
+		E.db.movers.ElvUF_PlayerCastbarMover = "BOTTOMRIGHTUIParentBOTTOMRIGHT-841212"
+		E.db.movers.ElvUF_Raid10Mover = "BOTTOMLEFTUIParentBOTTOMLEFT4249"
+		E.db.movers.ElvUF_PetTargetMover = "BOTTOMLEFTUIParentBOTTOMLEFT835169"
+		E.db.movers.ElvUF_Raid25Mover = "BOTTOMLEFTUIParentBOTTOMLEFT4249"
+		E.db.movers.ElvUF_TargetMover = "BOTTOMRIGHTUIParentBOTTOMRIGHT-634194"
+		E.db.movers.ElvUF_Raid40Mover = "BOTTOMLEFTUIParentBOTTOMLEFT4249"
+		E.db.movers.PetAB = "BOTTOMLEFTUIParentBOTTOMLEFT633114"
+		E.db.movers.ElvUF_TargetCastbarMover = "BOTTOMRIGHTUIParentBOTTOMRIGHT-634171"
+		E.db.movers.ElvUF_PlayerMover = "BOTTOMLEFTUIParentBOTTOMLEFT634194"
+		E.db.movers.ElvUF_PetMover = "BOTTOMLEFTUIParentBOTTOMLEFT634157"
+		E.db.movers.ElvUF_PartyMover = "BOTTOMLEFTUIParentBOTTOMLEFT4249"
+		E.db.movers.ElvUF_TargetTargetMover = "BOTTOMRIGHTUIParentBOTTOMRIGHT-835169"
+		E.db.movers.TotemBarMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT632247"
+	end
+	E.db.movers.ElvAB_1 = "BOTTOMLEFTUIParentBOTTOMLEFT91321"
+	E.db.movers.ElvAB_2 = "BOTTOMRIGHTUIParentBOTTOMRIGHT-81821"
+	E.db.movers.ElvAB_4 = "TOPRIGHTUIParentTOPRIGHT-311-319"
+	E.db.movers.ElvAB_3 = "BOTTOMLEFTUIParentBOTTOMLEFT81821"
+	E.db.movers.ElvAB_5 = "BOTTOMLEFTUIParentBOTTOMLEFT549479"
+	E.db.movers.MinimapMover = "TOPRIGHTUIParentTOPRIGHT0-21"
+	E.db.movers.UIBFrameMover = "BOTTOMLEFTUIParentBOTTOMLEFT63421"
+	E.db.movers.WatchFrameMover = "TOPRIGHTUIParentTOPRIGHT-237-231"
+	E.db.movers.BossHeaderMover = "TOPRIGHTUIParentTOPRIGHT0-233"
+	E.db.movers.ArenaHeaderMover = "TOPRIGHTUIParentTOPRIGHT0-233"
+	E.db.movers.PetBattleABMover = "BOTTOMLEFTUIParentBOTTOMLEFT76921"
+	E.db.movers.ShiftAB = "BOTTOMLEFTUIParentBOTTOMLEFT79121"
+	E.db.movers.ExperienceBarMover = "TOPElvUIParentTOP0-32"
+	E.db.movers.ReputationBarMover = "TOPElvUIParentTOP0-21"
+	E.db.movers.MarkMover = "BOTTOMLEFTUIParentBOTTOMLEFT882146"
+	E.db.movers.MicrobarMover = "BOTTOMRIGHTUIParentBOTTOMRIGHT0248"
+	E.db.movers.LootFrameMover = "TOPLEFTUIParentTOPLEFT60-360"
+	E.db.movers.AurasMover = "TOPRIGHTUIParentTOPRIGHT-214-21"
+	E.db.movers.BagsMover = "TOPLEFTUIParentTOPLEFT0-21"
+	E.db.movers.GMMover = "BOTTOMRIGHTUIParentBOTTOMRIGHT0456"
+	E.db.movers.BossButton = "BOTTOMLEFTUIParentBOTTOMLEFT66846"
+	E.db.movers.BNETMover = "BOTTOMRIGHTUIParentBOTTOMRIGHT0481"
+	E.db.movers.ElvUF_FocusMover = "BOTTOMRIGHTUIParentBOTTOMRIGHT-636103"
+	E.db.movers.ElvUF_FocusTargetMover = "BOTTOMRIGHTUIParentBOTTOMRIGHT-63634"
+	E.db.movers.VehicleSeatMover = "TOPLEFTElvUIParentTOPLEFT187-21"
+
+	E:UpdateAll(true)
+end
+
+function E:RepoocSetup() --The function to switch from classic ElvUI settings to Repooc's
+	InstallStepComplete.message = L["Repooc's Defaults Set"]
+	InstallStepComplete:Show()
+	if not E.db.movers then E.db.movers = {}; end
+	layout = E.db.layoutSet  --Pull which layout was selected if any.
+
+--	P.sle.auras.castername = true
+	--General Options
+	E.db.general.autoRepair = "PLAYER"  --Checked
+	E.db.general.backdropcolor = {
+		["b"] = 0.2509803921568627,
+		["g"] = 0.2509803921568627,
+		["r"] = 0.2509803921568627,
+	}  --Checked
+	E.db.general.backdropfadecolor = {
+		["a"] = 0.3500000238418579,
+		["b"] = 0.2980392156862745,
+		["g"] = 0.2980392156862745,
+		["r"] = 0.2980392156862745,
+	}  --Checked
+	E.db.general.bordercolor = {
+		["b"] = 0,
+		["g"] = 0,
+		["r"] = 0,
+	}  --Checked
+	E.db.general.health = {
+	}  --Checked
+	E.db.general.health_backdrop = {
+	}  --Checked
+	E.db.general.interruptAnnounce = "RAID"  --Checked
+	E.db.general.stickyFrames = true  --Checked
+	E.db.general.tapped = {
+	}  --Checked
+	E.db.general.threat.enable = true  --Checked
+	E.db.general.totems.growthDirection = "HORIZONTAL"  --Checked
+	E.db.general.totems.size = 30  --Checked
+	E.db.general.valuecolor = {
+		["a"] = 1,
+		["b"] = 1,
+		["g"] = 1,
+		["r"] = 1,
+	}  --Checked
+	E.db.general.vendorGrays = true  --Checked
+	E.db.hideTutorial = 1  --Checked
+
+	--Bags
+	E.db.bags.bagCols = 13  --Checked
+	E.db.bags.yOffset = 208  --Checked
+
+	--Chat
+	E.db.sle.chat.fade = true  --Checked
+	E.db.chat.hyperlinkHover = false  --Checked
+	E.db.chat.font = "Accidental Presidency"  --Checked
+	E.db.chat.fontOutline = "OUTLINE"
+	E.db.chat.panelHeight = "209"  --Checked
+	E.db.chat.panelBackdropNameLeft = "Interface\\addons\\ElvUI_SLE\\media\\textures\\chat_1.tga"  --Checked
+	E.db.chat.panelBackdropNameRight = "Interface\\addons\\ElvUI_SLE\\media\\textures\\chat_1.tga"  --Checked
+	E.db.chat.panelWidth = 440  --Checked
+	E.db.chat.tabFont = "Morpheus"  --Checked
+	E.db.chat.tabFontOutline = "OUTLINE"  --Checked
+	E.db.chat.tabFontSize = 14  --Checked
+	E.db.scrollDownInterval = 30  --Checked
+
+	--LFR Lockout
+	E.db.datatexts.lfrshow = true  --Checked
+
+	--Raid utility
+	E.db.sle.raidutil.ypos = E.screenheight - 30  --Checked
+
+	--PvP & Combat Icon
+	E.db.sle.combatico.pos = 'TOP'  --Checked
+
+	--UIButtons
+	E.db.sle.uibuttons.enable = true  --Checked
+
+	--Nameplate
+	E.db.nameplate.healthtext = "CURRENT_MAX_PERCENT"  --Checked
+	--Actionbars
+	E.db.actionbar.font = "Accidental Presidency"  --Checked
+	E.db.actionbar.fontsize = 13  --Checked
+	E.db.actionbar.fontOutline = "OUTLINE"  --Checked
+	E.db.actionbar.hotkeytext = true  --Checked
+	E.db.actionbar.macrotext = true  --Checked
+	--Bar 1
+	E.db.actionbar.bar1.enabled = true  --Checked
+	E.db.actionbar.bar1.backdrop = true  --Checked
+	E.db.actionbar.bar1.buttons = 12  --Checked
+	E.db.actionbar.bar1.buttonsPerRow = 6  --Checked
+	--Bar 2
+	E.db.actionbar.bar2.enabled = true  --Checked
+	E.db.actionbar.bar2.backdrop = true  --Checked
+	E.db.actionbar.bar2.buttons = 12  --Checked
+	E.db.actionbar.bar2.buttonsPerRow = 6  --Checked
+	--Bar 3
+	E.db.actionbar.bar3.enabled = true  --Checked
+	E.db.actionbar.bar3.backdrop = false  --Checked
+	E.db.actionbar.bar3.buttons = 12  --Checked
+	E.db.actionbar.bar3.buttonsize = 20  --Checked
+	E.db.actionbar.bar3.buttonsPerRow = 2  --Checked
+	--Bar 4
+	E.db.actionbar.bar4.enabled = true  --Checked
+	E.db.actionbar.bar4.backdrop = true  --Checked
+	E.db.actionbar.bar4.buttons = 12  --Checked
+	E.db.actionbar.bar4.buttonsize = 25  --Checked
+	E.db.actionbar.bar4.buttonsPerRow = 1  --Checked
+	--Bar 5
+	E.db.actionbar.bar5.enabled = true  --Checked
+	E.db.actionbar.bar5.backdrop = false  --Checked
+	E.db.actionbar.bar5.buttons = 12  --Checked
+	E.db.actionbar.bar5.buttonsize = 20  --Checked
+	E.db.actionbar.bar5.buttonsPerRow = 2  --Checked
+	--Stance Bar
+	--E.db.actionbar.stanceBar.buttonsize = 31
+	--E.db.actionbar.stanceBar.buttonsPerRow = 1
+	--E.db.actionbar.stanceBar.buttonspacing = 5
+	--E.db.actionbar.stanceBar.backdrop = true
+	--Pet Bar
+	E.db.actionbar.barPet.buttonsize = 25  --Checked
+
+	--Datatext Panels Settings
+	E.db.datatexts.font = "Accidental Presidency"  --Checked
+	E.db.datatexts.fontOutline = "OUTLINE"  --Checked
+	E.db.datatexts.fontSize = 15  --Checked
+	E.db.sle.datatext.bottom.enabled = true  --Checked
+	E.db.sle.datatext.chatleft.width = 424 --Checked
+	E.db.sle.datatext.chatright.width = 424  --Checked
+	E.db.sle.datatext.dp1.enabled = false  --Checked
+	E.db.sle.datatext.dp2.enabled = false  --Checked
+	E.db.sle.datatext.dp3.enabled = false  --Checked
+	E.db.sle.datatext.dp4.enabled = false  --Checked
+	E.db.sle.datatext.dp5.enabled = true  --Checked
+	E.db.sle.datatext.dp5.width = 424  --Checked
+	E.db.sle.datatext.dp6.enabled = true  --Checked
+	E.db.sle.datatext.dp6.width = 424  --Checked
+	E.db.sle.datatext.top.enabled = false  --Checked
+
+	--Datatext Panels Presets
+	E.db.datatexts.panels['DP_1']['left'] = ""  --Checked
+	E.db.datatexts.panels['DP_1']['middle'] = ""  --Checked
+	E.db.datatexts.panels['DP_1']['righ'] = ""  --Checked
+	E.db.datatexts.panels['DP_2']['left'] = ""  --Checked
+	E.db.datatexts.panels['DP_2']['middle'] = ""  --Checked
+	E.db.datatexts.panels['DP_2']['right'] = ""  --Checked
+	E.db.datatexts.panels['DP_3']['left'] = ""  --Checked
+	E.db.datatexts.panels['DP_3']['middle'] = ""  --Checked
+	E.db.datatexts.panels['DP_3']['right'] = ""  --Checked
+	E.db.datatexts.panels['DP_4']['left'] = ""  --Checked
+	E.db.datatexts.panels['DP_4']['middle'] = ""  --Checked
+	E.db.datatexts.panels['DP_4']['right'] = ""  --Checked
+	E.db.datatexts.panels['DP_5']['left'] = ""  --Checked
+	E.db.datatexts.panels['DP_5']['middle'] = ""  --Checked
+	E.db.datatexts.panels['DP_5']['right'] = ""  --Checked
+	E.db.datatexts.panels['DP_6']['left'] = ""  --Checked
+	E.db.datatexts.panels['DP_6']['middle'] = ""  --Checked
+	E.db.datatexts.panels['DP_6']['right'] = "Bags"  --Checked
+	E.db.datatexts.panels['LeftChatDataPanel']['left'] = "BugSack"  --Checked
+	E.db.datatexts.panels['LeftChatDataPanel']['middle'] = "AtlasLoot"  --Checked
+	E.db.datatexts.panels['LeftChatDataPanel']['right'] = "Durability"  --Checked
+	E.db.datatexts.panels['RightChatDataPanel']['left'] = "WIM"  --Checked
+	E.db.datatexts.panels['RightChatDataPanel']['middle'] = "SocialState"  --Checked
+	E.db.datatexts.panels['RightChatDataPanel']['right'] = "Time"  --Checked
+	E.db.datatexts.panels['Top_Center'] = "Version"  --Checked
+	E.db.datatexts.panels['Bottom_Panel'] = "System"  --Checked
+	E.db.datatexts.panels['LeftMiniPanel'] = "Gold"  --Checked
+	E.db.datatexts.panels['RightMiniPanel'] = "Spec Switch"  --Checked
+
+	--Datatext Panels Spec Specific
+	if layout == 'tank' then
+		E.db.datatexts.panels.DP_5.left = '';  --Checked
+		E.db.datatexts.panels.DP_5.middle = '';  --Checked
+		E.db.datatexts.panels.DP_5.right = '';  --Checked
+		E.db.datatexts.panels.DP_6.left = '';  --Checked
+		E.db.datatexts.panels.DP_6.middle = '';  --Checked
+	elseif layout == 'healer' then
+		E.db.datatexts.panels.DP_5.left = '';  --Checked
+		E.db.datatexts.panels.DP_5.middle = 'Crit Chance';  --Checked
+		E.db.datatexts.panels.DP_5.right = 'Spell/Heal Power';  --Checked
+		E.db.datatexts.panels.DP_6.left = 'Haste';  --Checked
+		E.db.datatexts.panels.DP_6.middle = '';  --Checked
+	elseif layout == 'dpsCaster' then
+		E.db.datatexts.panels.DP_5.left = 'Hit Rating';  --Checked
+		E.db.datatexts.panels.DP_5.middle = 'Crit Chance';  --Checked
+		E.db.datatexts.panels.DP_5.right = 'Spell/Heal Power';  --Checked
+		E.db.datatexts.panels.DP_6.left = 'Haste';  --Checked
+		E.db.datatexts.panels.DP_6.middle = 'DPS';  --Checked
+	else
+		E.db.datatexts.panels.DP_5.left = '';  --Checked
+		E.db.datatexts.panels.DP_5.middle = 'Crit Chance';  --Checked
+		E.db.datatexts.panels.DP_5.right = '';  --Checked
+		E.db.datatexts.panels.DP_6.left = 'Haste';  --Checked
+		E.db.datatexts.panels.DP_6.middle = 'DPS';  --Checked
+	end
+
+	--Unitframes
+	E.db.unitframe.colors.colorhealthbyvalue = false  --Checked
+	E.db.unitframe.colors.customhealthbackdrop = true  --Checked
+	E.db.unitframe.colors.health = {
+		["b"] = 0.3764705882352941,
+		["g"] = 0.3764705882352941,
+		["r"] = 0.3764705882352941,
+	}  --Checked
+	E.db.unitframe.colors.health_backdrop = {
+		["b"] = 0,
+		["g"] = 0,
+		["r"] = 0.8784313725490196,
+	}  --Checked
+	E.db.unitframe.font = "Accidental Presidency"  --Checked
+	E.db.unitframe.fontSize = 13  --Checked
+	E.db.unitframe.fontOutline = 'THICKOUTLINE'  --Checked
+
+	--Unitframes (Player)
+	E.db.unitframe.units.player.castbar.height = 15  --Checked
+	E.db.unitframe.units.player.castbar.width = 308  --Checked
+	E.db.unitframe.units.player.classbar.fill = "fill"  --Checked
+	E.db.unitframe.units.player.health.position = "BOTTOMLEFT"  --Checked
+	E.db.unitframe.units.player.health.text_format = "[healthcolor][health:current-percent:sl]"  --Checked
+	E.db.unitframe.units.player.height = 54  --Checked
+	E.db.unitframe.units.player.name.position = "BOTTOMRIGHT"  --Checked
+	E.db.unitframe.units.player.name.text_format = "[namecolor][name:medium]"  --Checked
+	E.db.unitframe.units.player.portrait.camDistanceScale = 2  --Checked
+	E.db.unitframe.units.player.portrait.enable = true  --Checked
+	E.db.unitframe.units.player.portrait.overlay = true  --Checked
+	E.db.unitframe.units.player.power.offset = 20  --Checked
+	E.db.unitframe.units.player.power.position = "BOTTOMLEFT"  --Checked
+	E.db.unitframe.units.player.power.text_format = "[powercolor][power:current:sl]"  --Checked
+	E.db.unitframe.units.player.pvp.text_format = "||cFFB04F4F[pvptimer]||r"  --Checked
+	E.db.unitframe.units.player.restIcon = false  --Checked
+	E.db.unitframe.units.player.width = 270  --Checked
+
+	--Unitframes (Target)
+	E.db.unitframe.units.target.castbar.height = 25  --Checked
+	E.db.unitframe.units.target.castbar.width = 308  --Checked
+	E.db.unitframe.units.target.healPrediction = true  --Checked
+	E.db.unitframe.units.target.health.position = "BOTTOMRIGHT"  --Checked
+	E.db.unitframe.units.target.health.text = true  --Checked
+	E.db.unitframe.units.target.name.enable = true  --Checked
+	E.db.unitframe.units.target.name.position = "BOTTOMLEFT"  --Checked
+	E.db.unitframe.units.target.portrait.camDistanceScale = 2  --Checked
+	E.db.unitframe.units.target.portrait.enable = true  --Checked
+	E.db.unitframe.units.target.portrait.overlay = true  --Checked
+	E.db.unitframe.units.target.power.hideonnpc = false  --Checked
+	E.db.unitframe.units.target.power.offset = 20  --Checked
+	E.db.unitframe.units.target.power.position = "BOTTOMRIGHT"  --Checked
+	E.db.unitframe.units.target.power.hideonnpc = false  --Checked
+
+	--Unitframes (Raid10)
+	E.db.unitframe.units.raid10.health.orientation = "VERTICAL"  --Checked
+	E.db.unitframe.units.raid10.width = 69  --Checked
+
+	--Unitframes (Raid25)
+	E.db.unitframe.units.raid25.healPrediction = true  --Checked
+	E.db.unitframe.units.raid25.width = 69  --Checked
+	E.db.unitframe.units.raid25.health.orientation = "VERTICAL"  --Checked
+	E.db.unitframe.units.raid25.height = 39  --Checked
+
+	--Unitframes (Raid40)
+	E.db.unitframe.units.raid40.width = 69  --Checked
+
+	if layout == "healer" then
+		E.db.movers.ElvUF_PlayerMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT489332"  --Checked
+		E.db.movers.ElvUF_TargetMover = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-492332"  --Checked
+		E.db.movers.ElvUF_TargetTargetMover = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-789347"  --Checked
+		E.db.movers.ElvUF_PetMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT489294"  --Checked
+		E.db.movers.ElvUF_FocusMover = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-260342"  --Checked
+		E.db.movers.ElvUF_PartyMover = "BOTTOMLEFTUIParentBOTTOMLEFT44379"  --Checked
+		E.db.movers.ElvUF_PlayerCastbarMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT806170"  --Checked
+		E.db.movers.ElvUF_Raid10Mover = "BOTTOMLEFTElvUIParentBOTTOMLEFT44379"  --Checked
+		E.db.movers.ElvUF_Raid25Mover = "BOTTOMLEFTElvUIParentBOTTOMLEFT44323"  --Checked
+		E.db.movers.ElvUF_Raid40Mover = "BOTTOMLEFTElvUIParentBOTTOMLEFT44323"  --Checked
+		E.db.movers.ElvUF_TargetCastbarMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT806193"  --Checked
+		E.db.movers.MarkMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT883229"  --Checked
+		E.db.movers.TotemBarMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT552232"  --Checked
+		E.db.movers.UIBFrameMover = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-44222"  --Checked
+		E.db.movers.ElvAB_1 = "BOTTOMLEFTElvUIParentBOTTOMLEFT85695"  --Checked
+		E.db.movers.ElvAB_2 = "BOTTOMLEFTElvUIParentBOTTOMLEFT85621"  --Checked
+		E.db.movers.ElvAB_3 = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-80222"  --Checked
+		E.db.movers.ElvAB_5 = "BOTTOMLEFTElvUIParentBOTTOMLEFT80222"  --Checked
+	else
+		E.db.movers.ElvUF_PlayerMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT489332"  --Checked
+		E.db.movers.ElvUF_TargetMover = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-492332"  --Checked
+		E.db.movers.ElvUF_TargetTargetMover = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-789347"  --Checked
+		E.db.movers.ElvUF_PetMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT489294"  --Checked
+		E.db.movers.ElvUF_FocusMover = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-260342"  --Checked
+		E.db.movers.ElvUF_PartyMover = "BOTTOMLEFTUIParentBOTTOMLEFT44379"  --Checked
+		E.db.movers.ElvUF_PlayerCastbarMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT806170"  --Checked
+		E.db.movers.ElvUF_Raid10Mover = "BOTTOMLEFTElvUIParentBOTTOMLEFT44379"  --Checked
+		E.db.movers.ElvUF_Raid25Mover = "BOTTOMLEFTElvUIParentBOTTOMLEFT44323"  --Checked
+		E.db.movers.ElvUF_Raid40Mover = "BOTTOMLEFTElvUIParentBOTTOMLEFT44323"  --Checked
+		E.db.movers.ElvUF_TargetCastbarMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT806193"  --Checked
+		E.db.movers.MarkMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT883229"  --Checked
+		E.db.movers.TotemBarMover = "BOTTOMLEFTElvUIParentBOTTOMLEFT552232"  --Checked
+		E.db.movers.UIBFrameMover = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-44222"  --Checked
+		E.db.movers.ElvAB_1 = "BOTTOMLEFTElvUIParentBOTTOMLEFT85695"  --Checked
+		E.db.movers.ElvAB_2 = "BOTTOMLEFTElvUIParentBOTTOMLEFT85621"  --Checked
+		E.db.movers.ElvAB_3 = "BOTTOMRIGHTElvUIParentBOTTOMRIGHT-80222"  --Checked
+		E.db.movers.ElvAB_5 = "BOTTOMLEFTElvUIParentBOTTOMLEFT80222"  --Checked
+	end
+
+	for i = 1, NUM_CHAT_WINDOWS do
+		local frame = _G[format("ChatFrame%s", i)]
+		FCF_SetChatWindowFontSize(nil, frame, 14)
+	end
+
+	E:UpdateAll(true)
+end
+
+function E:ElvSetup() --The function to restore defaults. not finished yet lol
+	InstallStepComplete.message = L["Elv's Defaults Set"]
+	InstallStepComplete:Show()
+	if not E.db.movers then E.db.movers = {}; end
+	--Set to defaults. Every module is listed just in case.
+	E:CopyTable(E.db.general, P.general) --General options
+	E:CopyTable(E.db.nameplate, P.nameplate) --Nameplates
+	E:CopyTable(E.db.datatexts, P.datatexts) --Datatexts
+	E:CopyTable(E.db.actionbar, P.actionbar) --Actionbars
+	E:CopyTable(E.db.tooltip, P.tooltip) --Tooltip
+	E:CopyTable(E.db.unitframe, P.unitframe) --Unitframes
+	E:CopyTable(E.db.skins, P.skins) --Skins
+	E:CopyTable(E.db.bags, P.bags) --Bags
+	E:CopyTable(E.db.chat, P.chat) --Chat
+	E:CopyTable(E.db.sle, P.sle) --Edit's main defaults
+	E:CopyTable(E.db.microbar, P.microbar) --Microbar
+	--Move every bar and panel to the defaults.
+	E:ResetUI() --Reseting positions
+	StaticPopup3Button1:Click() --this is automatic click on confirm for reseting movers
+
+	E:UpdateAll(true)
+end
+
+function E:HudSimple()
+	local H = E:GetModule('HUD')
+	InstallStepComplete.message = L["Simple Layout Set"]
+	InstallStepComplete:Show()
+	H:SimpleLayout()
+	H:UpdateAllFrames()
+end
+
+function E:HudDefault()
+	local H = E:GetModule('HUD')
+	InstallStepComplete.message = L["Default Layout"]
+	InstallStepComplete:Show()
+	E:CopyTable(E.db.hud,P.hud)
+	H:UpdateAllFrames()
+end
+
+local function InstallComplete()
+	E.db.install_complete = E.version
+
+	if GetCVarBool("Sound_EnableMusic") then
+		StopMusic()
+	end
+
+	ReloadUI()
+end
+
+local function ResetAll()
+	InstallNextButton:Disable()
+	InstallPrevButton:Disable()
+	InstallOption1Button:Hide()
+	InstallOption1Button:SetScript("OnClick", nil)
+	InstallOption1Button:SetText("")
+	InstallOption2Button:Hide()
+	InstallOption2Button:SetScript('OnClick', nil)
+	InstallOption2Button:SetText('')
+	InstallOption3Button:Hide()
+	InstallOption3Button:SetScript('OnClick', nil)
+	InstallOption3Button:SetText('')
+	InstallOption4Button:Hide()
+	InstallOption4Button:SetScript('OnClick', nil)
+	InstallOption4Button:SetText('')
+	ElvUIInstallFrame.SubTitle:SetText("")
+	ElvUIInstallFrame.Desc1:SetText("")
+	ElvUIInstallFrame.Desc2:SetText("")
+	ElvUIInstallFrame.Desc3:SetText("")
+	ElvUIInstallFrame:Size(550, 400)
+end
+
+local function SetPage(PageNum)
+	--Elv Has
+	CURRENT_PAGE = PageNum
+	ResetAll()
+	InstallStatus:SetValue(PageNum)
+
+	local f = ElvUIInstallFrame
+
+	if PageNum == MAX_PAGE then
+		InstallNextButton:Disable()
+	else
+		InstallNextButton:Enable()
+	end
+
+	if PageNum == 1 then
+		InstallPrevButton:Disable()
+	else
+		InstallPrevButton:Enable()
+	end
+
+	if PageNum == 1 then
+		f.SubTitle:SetText(format(L["Welcome to ElvUI version %s!"], E.version))
+		f.Desc1:SetText(L["This install process will help you learn some of the features in ElvUI has to offer and also prepare your user interface for usage."])
+		f.Desc2:SetText(L["The in-game configuration menu can be accesses by typing the /ec command or by clicking the 'C' button on the minimap. Press the button below if you wish to skip the installation process."])
+		f.Desc3:SetText(L["Please press the continue button to go onto the next step."])
+
+		InstallOption1Button:Show()
+		InstallOption1Button:SetScript("OnClick", InstallComplete)
+		InstallOption1Button:SetText(L["Skip Process"])
+	elseif PageNum == 2 then
+		f.SubTitle:SetText(L["CVars"])
+		f.Desc1:SetText(L["This part of the installation process sets up your World of Warcraft default options it is recommended you should do this step for everything to behave properly."])
+		f.Desc2:SetText(L["Please click the button below to setup your CVars."])
+		f.Desc3:SetText(L["Importance: |cff07D400High|r"])
+		InstallOption1Button:Show()
+		InstallOption1Button:SetScript("OnClick", SetupCVars)
+		InstallOption1Button:SetText(L["Setup CVars"])
+	elseif PageNum == 3 then
+		f.SubTitle:SetText(L["Chat"])
+		f.Desc1:SetText(L["This part of the installation process sets up your chat windows names, positions and colors."])
+		f.Desc2:SetText(L["The chat windows function the same as Blizzard standard chat windows, you can right click the tabs and drag them around, rename, etc. Please click the button below to setup your chat windows."])
+		f.Desc3:SetText(L["Importance: |cffD3CF00Medium|r"])
+		InstallOption1Button:Show()
+		InstallOption1Button:SetScript("OnClick", SetupChat)
+		InstallOption1Button:SetText(L["Setup Chat"])
+	elseif PageNum == 4 then
+		f.SubTitle:SetText(L['Theme Setup'])
+		f.Desc1:SetText(L['Choose a theme layout you wish to use for your initial setup.'])
+		f.Desc2:SetText(L['You can always change fonts and colors of any element of elvui from the in-game configuration.'])
+		f.Desc3:SetText(L["Importance: |cffFF0000Low|r"])
+
+		InstallOption1Button:Show()
+		InstallOption1Button:SetScript('OnClick', function() E:SetupTheme('classic') end)
+		InstallOption1Button:SetText(L["Classic"])
+		InstallOption2Button:Show()
+		InstallOption2Button:SetScript('OnClick', function() E:SetupTheme('default') end)
+		InstallOption2Button:SetText(DEFAULT)
+		InstallOption3Button:Show()
+		InstallOption3Button:SetScript('OnClick', function() E:SetupTheme('class') end)
+		InstallOption3Button:SetText(CLASS)
+	elseif PageNum == 5 then
+		f.SubTitle:SetText(L["Resolution"])
+		f.Desc1:SetText(format(L["Your current resolution is %s, this is considered a %s resolution."], E.resolution, E.lowversion == true and L["low"] or L["high"]))
+		if E.lowversion then
+			f.Desc2:SetText(L["This resolution requires that you change some settings to get everything to fit on your screen."].." "..L["Click the button below to resize your chat frames, unitframes, and reposition your actionbars."].." "..L["You may need to further alter these settings depending how low you resolution is."])
+			f.Desc3:SetText(L["Importance: |cff07D400High|r"])
+		else
+			f.Desc2:SetText(L["This resolution doesn't require that you change settings for the UI to fit on your screen."].." "..L["Click the button below to resize your chat frames, unitframes, and reposition your actionbars."].." "..L["This is completely optional."])
+			f.Desc3:SetText(L["Importance: |cffFF0000Low|r"])
+		end
+
+		InstallOption1Button:Show()
+		InstallOption1Button:SetScript('OnClick', function() E.SetupResolution('high') end)
+		InstallOption1Button:SetText(L["High Resolution"])
+		InstallOption2Button:Show()
+		InstallOption2Button:SetScript('OnClick', function() E.SetupResolution('low') end)
+		InstallOption2Button:SetText(L['Low Resolution'])
+	elseif PageNum == 6 then
+		f.SubTitle:SetText(L["Layout"])
+		f.Desc1:SetText(L["You can now choose what layout you wish to use based on your combat role."])
+		f.Desc2:SetText(L["This will change the layout of your unitframes, raidframes, and datatexts."])
+		f.Desc3:SetText(L["Importance: |cffD3CF00Medium|r"])
+		InstallOption1Button:Show()
+		InstallOption1Button:SetScript('OnClick', function() E.db.layoutSet = nil; E:SetupLayout('tank') end)
+		InstallOption1Button:SetText(L['Tank'])
+		InstallOption2Button:Show()
+		InstallOption2Button:SetScript('OnClick', function() E.db.layoutSet = nil; E:SetupLayout('healer') end)
+		InstallOption2Button:SetText(L['Healer'])
+		InstallOption3Button:Show()
+		InstallOption3Button:SetScript('OnClick', function() E.db.layoutSet = nil; E:SetupLayout('dpsMelee') end)
+		InstallOption3Button:SetText(L['Physical DPS'])
+		InstallOption4Button:Show()
+		InstallOption4Button:SetScript('OnClick', function() E.db.layoutSet = nil; E:SetupLayout('dpsCaster') end)
+		InstallOption4Button:SetText(L['Caster DPS'])
+	elseif PageNum == 7 then
+		f.SubTitle:SetText(L["Auras System"])
+		f.Desc1:SetText(L["Select the type of aura system you want to use with ElvUI's unitframes. The integrated system utilizes both aura-bars and aura-icons. The icons only system will display only icons and aurabars won't be used. The classic system will configure your auras to how they were pre-v4."])
+		f.Desc2:SetText(L["If you have an icon or aurabar that you don't want to display simply hold down shift and right click the icon for it to disapear."])
+		f.Desc3:SetText(L["Importance: |cffD3CF00Medium|r"])
+		InstallOption1Button:Show()
+		InstallOption1Button:SetScript('OnClick', function() SetupAuras('integrated') end)
+		InstallOption1Button:SetText(L['Integrated'])
+		InstallOption2Button:Show()
+		InstallOption2Button:SetScript('OnClick', function() SetupAuras() end)
+		InstallOption2Button:SetText(L['Icons Only'])
+		InstallOption3Button:Show()
+		InstallOption3Button:SetScript('OnClick', function() SetupAuras('classic') end)
+		InstallOption3Button:SetText(L['Classic'])
+	elseif PageNum == 8 then --The new page
+		f.SubTitle:SetText(L["Shadow & Light Settings"])
+		f.Desc1:SetText(L["You can now choose if you what to use one of authors' set of options. This will change not only the positioning of some elements but also change a bunch of other options."])
+		f.Desc2:SetText(L["SLE_Install_Text2"])
+		f.Desc3:SetText(L["Importance: |cffFF0000Low|r"])
+
+		InstallOption1Button:Show()
+		InstallOption1Button:SetScript('OnClick', function() E:DarthSetup() end)
+		InstallOption1Button:SetText(L["Darth's Config"])
+		InstallOption2Button:Show()
+		InstallOption2Button:SetScript('OnClick', function() E:RepoocSetup() end)
+		InstallOption2Button:SetText(L["Repooc's Config"])
+		InstallOption3Button:Show()
+		InstallOption3Button:SetScript('OnClick', function() E:ElvSetup() end)
+		InstallOption3Button:SetText(L["Elv's Defaults"])
+	elseif PageNum == 9 and IsAddOnLoaded("ElvUI_Hud") then --Hud's page if enabled
+		f.SubTitle:SetText("ElvUI Hud")
+		f.Desc1:SetText(L["Thank you for using ElvUI Hud!"])
+		f.Desc2:SetText(L["Here you can choose between the simple layout (only player health and power) or the default layout for the hud"])
+		f.Desc3:SetText(L["Importance: |cffFF0000Low|r"])
+
+		InstallOption1Button:Show()
+		InstallOption1Button:SetScript('OnClick', function() E:HudSimple() end)
+		InstallOption1Button:SetText(L["Simple Layout"])
+		InstallOption2Button:Show()
+		InstallOption2Button:SetScript('OnClick', function() E:HudDefault() end)
+		InstallOption2Button:SetText(L["Default Layout"])
+	elseif PageNum == 9 and not IsAddOnLoaded("ElvUI_Hud") then --Finish install if Hud disabled
+		f.SubTitle:SetText(L["Installation Complete"])
+		f.Desc1:SetText(L["You are now finished with the installation process. If you are in need of technical support please visit us at http://www.tukui.org."])
+		f.Desc2:SetText(L["Please click the button below so you can setup variables and ReloadUI."])
+
+		InstallOption1Button:Show()
+		InstallOption1Button:SetScript("OnClick", InstallComplete)
+		InstallOption1Button:SetText(L["Finished"])
+		ElvUIInstallFrame:Size(550, 350)
+	elseif PageNum == 10 then --Finish install if Hud enabled
+		f.SubTitle:SetText(L["Installation Complete"])
+		f.Desc1:SetText(L["You are now finished with the installation process. If you are in need of technical support please visit us at http://www.tukui.org."])
+		f.Desc2:SetText(L["Please click the button below so you can setup variables and ReloadUI."])
+
+		InstallOption1Button:Show()
+		InstallOption1Button:SetScript("OnClick", InstallComplete)
+		InstallOption1Button:SetText(L["Finished"])
+		ElvUIInstallFrame:Size(550, 350)
+	end
+end
+
+local function NextPage()
+	if CURRENT_PAGE ~= MAX_PAGE then
+		CURRENT_PAGE = CURRENT_PAGE + 1
+		SetPage(CURRENT_PAGE)
+	end
+end
+
+local function PreviousPage()
+	if CURRENT_PAGE ~= 1 then
+		CURRENT_PAGE = CURRENT_PAGE - 1
+		SetPage(CURRENT_PAGE)
+	end
+end
+
+--Install UI
+function E:Install()
+	--ElvUI don't have this?
+	MaxPages()
+	if not InstallStepComplete then
+		local imsg = CreateFrame("Frame", "InstallStepComplete", E.UIParent)
+		imsg:Size(418, 72)
+		imsg:Point("TOP", 0, -190)
+		imsg:Hide()
+		imsg:SetScript('OnShow', function(self)
+			if self.message then
+				PlaySoundFile([[Sound\Interface\LevelUp.wav]])
+				self.text:SetText(self.message)
+				UIFrameFadeOut(self, 3.5, 1, 0)
+				E:Delay(4, function() self:Hide() end)
+				self.message = nil
+
+				if imsg.firstShow == false then
+					if GetCVarBool("Sound_EnableMusic") then
+						PlayMusic([[Sound\Music\ZoneMusic\DMF_L70ETC01.mp3]])
+					end
+					imsg.firstShow = true
+				end
+			else
+				self:Hide()
+			end
+		end)
+
+		imsg.firstShow = false
+
+		imsg.bg = imsg:CreateTexture(nil, 'BACKGROUND')
+		imsg.bg:SetTexture([[Interface\LevelUp\LevelUpTex]])
+		imsg.bg:SetPoint('BOTTOM')
+		imsg.bg:Size(326, 103)
+		imsg.bg:SetTexCoord(0.00195313, 0.63867188, 0.03710938, 0.23828125)
+		imsg.bg:SetVertexColor(1, 1, 1, 0.6)
+
+		imsg.lineTop = imsg:CreateTexture(nil, 'BACKGROUND')
+		imsg.lineTop:SetDrawLayer('BACKGROUND', 2)
+		imsg.lineTop:SetTexture([[Interface\LevelUp\LevelUpTex]])
+		imsg.lineTop:SetPoint("TOP")
+		imsg.lineTop:Size(418, 7)
+		imsg.lineTop:SetTexCoord(0.00195313, 0.81835938, 0.01953125, 0.03320313)
+
+		imsg.lineBottom = imsg:CreateTexture(nil, 'BACKGROUND')
+		imsg.lineBottom:SetDrawLayer('BACKGROUND', 2)
+		imsg.lineBottom:SetTexture([[Interface\LevelUp\LevelUpTex]])
+		imsg.lineBottom:SetPoint("BOTTOM")
+		imsg.lineBottom:Size(418, 7)
+		imsg.lineBottom:SetTexCoord(0.00195313, 0.81835938, 0.01953125, 0.03320313)
+
+		imsg.text = imsg:CreateFontString(nil, 'ARTWORK', 'GameFont_Gigantic')
+		imsg.text:Point("BOTTOM", 0, 12)
+		imsg.text:SetTextColor(1, 0.82, 0)
+		imsg.text:SetJustifyH("CENTER")
+	end
+
+	--Create Frame
+	if not ElvUIInstallFrame then
+		local f = CreateFrame("Button", "ElvUIInstallFrame", E.UIParent)
+		f.SetPage = SetPage
+		f:Size(550, 400)
+		f:SetTemplate("Transparent")
+		f:CreateShadow("Default")
+		f:SetPoint("CENTER")
+		f:SetFrameStrata('TOOLTIP')
+
+		f.Title = f:CreateFontString(nil, 'OVERLAY')
+		f.Title:FontTemplate(nil, 17, nil)
+		f.Title:Point("TOP", 0, -5)
+		f.Title:SetText(L["ElvUI Installation"])
+
+		f.Next = CreateFrame("Button", "InstallNextButton", f, "UIPanelButtonTemplate")
+		f.Next:StripTextures()
+		f.Next:SetTemplate("Default", true)
+		f.Next:Size(110, 25)
+		f.Next:Point("BOTTOMRIGHT", -5, 5)
+		f.Next:SetText(CONTINUE)
+		f.Next:Disable()
+		f.Next:SetScript("OnClick", NextPage)
+		E.Skins:HandleButton(f.Next, true)
+
+		f.Prev = CreateFrame("Button", "InstallPrevButton", f, "UIPanelButtonTemplate")
+		f.Prev:StripTextures()
+		f.Prev:SetTemplate("Default", true)
+		f.Prev:Size(110, 25)
+		f.Prev:Point("BOTTOMLEFT", 5, 5)
+		f.Prev:SetText(PREVIOUS)
+		f.Prev:Disable()
+		f.Prev:SetScript("OnClick", PreviousPage)
+		E.Skins:HandleButton(f.Prev, true)
+
+		f.Status = CreateFrame("StatusBar", "InstallStatus", f)
+		f.Status:SetFrameLevel(f.Status:GetFrameLevel() + 2)
+		f.Status:CreateBackdrop("Default")
+		f.Status:SetStatusBarTexture(E["media"].normTex)
+		f.Status:SetStatusBarColor(unpack(E["media"].rgbvaluecolor))
+		f.Status:SetMinMaxValues(0, MAX_PAGE)
+		f.Status:Point("TOPLEFT", f.Prev, "TOPRIGHT", 6, -2)
+		f.Status:Point("BOTTOMRIGHT", f.Next, "BOTTOMLEFT", -6, 2)
+		f.Status.text = f.Status:CreateFontString(nil, 'OVERLAY')
+		f.Status.text:FontTemplate()
+		f.Status.text:SetPoint("CENTER")
+		f.Status.text:SetText(CURRENT_PAGE.." / "..MAX_PAGE)
+		f.Status:SetScript("OnValueChanged", function(self)
+			self.text:SetText(self:GetValue().." / "..MAX_PAGE)
+		end)
+
+		f.Option1 = CreateFrame("Button", "InstallOption1Button", f, "UIPanelButtonTemplate")
+		f.Option1:StripTextures()
+		f.Option1:Size(160, 30)
+		f.Option1:Point("BOTTOM", 0, 45)
+		f.Option1:SetText("")
+		f.Option1:Hide()
+		E.Skins:HandleButton(f.Option1, true)
+
+		f.Option2 = CreateFrame("Button", "InstallOption2Button", f, "UIPanelButtonTemplate")
+		f.Option2:StripTextures()
+		f.Option2:Size(110, 30)
+		f.Option2:Point('BOTTOMLEFT', f, 'BOTTOM', 4, 45)
+		f.Option2:SetText("")
+		f.Option2:Hide()
+		f.Option2:SetScript('OnShow', function() f.Option1:SetWidth(110); f.Option1:ClearAllPoints(); f.Option1:Point('BOTTOMRIGHT', f, 'BOTTOM', -4, 45) end)
+		f.Option2:SetScript('OnHide', function() f.Option1:SetWidth(160); f.Option1:ClearAllPoints(); f.Option1:Point("BOTTOM", 0, 45) end)
+		E.Skins:HandleButton(f.Option2, true)
+
+		f.Option3 = CreateFrame("Button", "InstallOption3Button", f, "UIPanelButtonTemplate")
+		f.Option3:StripTextures()
+		f.Option3:Size(100, 30)
+		f.Option3:Point('LEFT', f.Option2, 'RIGHT', 4, 0)
+		f.Option3:SetText("")
+		f.Option3:Hide()
+		f.Option3:SetScript('OnShow', function() f.Option1:SetWidth(100); f.Option1:ClearAllPoints(); f.Option1:Point('RIGHT', f.Option2, 'LEFT', -4, 0); f.Option2:SetWidth(100); f.Option2:ClearAllPoints(); f.Option2:Point('BOTTOM', f, 'BOTTOM', 0, 45)  end)
+		f.Option3:SetScript('OnHide', function() f.Option1:SetWidth(160); f.Option1:ClearAllPoints(); f.Option1:Point("BOTTOM", 0, 45); f.Option2:SetWidth(110); f.Option2:ClearAllPoints(); f.Option2:Point('BOTTOMLEFT', f, 'BOTTOM', 4, 45) end)
+		E.Skins:HandleButton(f.Option3, true)
+
+		f.Option4 = CreateFrame("Button", "InstallOption4Button", f, "UIPanelButtonTemplate")
+		f.Option4:StripTextures()
+		f.Option4:Size(100, 30)
+		f.Option4:Point('LEFT', f.Option3, 'RIGHT', 4, 0)
+		f.Option4:SetText("")
+		f.Option4:Hide()
+		f.Option4:SetScript('OnShow', function()
+			f.Option1:Width(100)
+			f.Option2:Width(100)
+
+			f.Option1:ClearAllPoints();
+			f.Option1:Point('RIGHT', f.Option2, 'LEFT', -4, 0);
+			f.Option2:ClearAllPoints();
+			f.Option2:Point('BOTTOMRIGHT', f, 'BOTTOM', -4, 45)
+		end)
+		f.Option4:SetScript('OnHide', function() f.Option1:SetWidth(160); f.Option1:ClearAllPoints(); f.Option1:Point("BOTTOM", 0, 45); f.Option2:SetWidth(110); f.Option2:ClearAllPoints(); f.Option2:Point('BOTTOMLEFT', f, 'BOTTOM', 4, 45) end)
+		E.Skins:HandleButton(f.Option4, true)
+
+		f.SubTitle = f:CreateFontString(nil, 'OVERLAY')
+		f.SubTitle:FontTemplate(nil, 15, nil)
+		f.SubTitle:Point("TOP", 0, -40)
+
+		f.Desc1 = f:CreateFontString(nil, 'OVERLAY')
+		f.Desc1:FontTemplate()
+		f.Desc1:Point("TOPLEFT", 20, -75)
+		f.Desc1:Width(f:GetWidth() - 40)
+
+		f.Desc2 = f:CreateFontString(nil, 'OVERLAY')
+		f.Desc2:FontTemplate()
+		f.Desc2:Point("TOPLEFT", 20, -125)
+		f.Desc2:Width(f:GetWidth() - 40)
+
+		f.Desc3 = f:CreateFontString(nil, 'OVERLAY')
+		f.Desc3:FontTemplate()
+		f.Desc3:Point("TOPLEFT", 20, -175)
+		f.Desc3:Width(f:GetWidth() - 40)
+
+		local close = CreateFrame("Button", "InstallCloseButton", f, "UIPanelCloseButton")
+		close:SetPoint("TOPRIGHT", f, "TOPRIGHT")
+		close:SetScript("OnClick", function()
+			f:Hide()
+		end)
+		E.Skins:HandleCloseButton(close)
+
+		f.tutorialImage = f:CreateTexture('InstallTutorialImage', 'OVERLAY')
+		f.tutorialImage:Size(256, 128)
+		f.tutorialImage:SetTexture('Interface\\AddOns\\ElvUI_SLE\\media\\textures\\logo_elvui_sle.tga')
+		f.tutorialImage:Point('BOTTOM', 0, 70)
+
+	end
+
+	ElvUIInstallFrame:Show()
+	NextPage()
+end
\ No newline at end of file
diff --git a/ElvUI_SLE/modules/load_modules.xml b/ElvUI_SLE/modules/load_modules.xml
index b5688cb..e062936 100644
--- a/ElvUI_SLE/modules/load_modules.xml
+++ b/ElvUI_SLE/modules/load_modules.xml
@@ -1,13 +1,16 @@
-<Ui xmlns="http://www.blizzard.com/wow/ui/">
+<Ui xmlns="http://www.blizzard.com/wow/ui/">
+	<Script file='install.lua'/>
+	<Script file='options.lua'/>
 	<Include file='auras\load_auras.xml'/>
 	<Include file='autorelease\load_autorelease.xml'/>
 	<Include file='backgrounds\load_backgrounds.xml'/>
 	<Include file='chat\load_chat.xml'/>
 	<Include file='datatexts\load_datatexts.xml'/>
+	<Include file='errors\load_errors.xml'/>
 	<Include file='exprepbar\load_exprepbar.xml'/>
 	<Include file='marks\load_marks.xml'/>
 	<Include file='raidutility\load_raidutility.xml'/>
-	<Include file='skins\load_skins.xml'/>
 	<Include file='uibuttons\load_uibuttons.xml'/>
 	<Include file='unitframes\load_unitframes.xml'/>
+	<Script file='test.lua'/>
 </Ui>
\ No newline at end of file
diff --git a/ElvUI_SLE/modules/options.lua b/ElvUI_SLE/modules/options.lua
new file mode 100644
index 0000000..2700b3e
--- /dev/null
+++ b/ElvUI_SLE/modules/options.lua
@@ -0,0 +1,76 @@
+local E, L, V, P, G =  unpack(ElvUI); --Inport: Engine, Locales, ProfileDB, GlobalDB
+local UF = E:GetModule('UnitFrames')
+local AB = E:GetModule('ActionBars')
+local CH = E:GetModule('Chat')
+local A = E:GetModule('Auras')
+
+--Main options group
+E.Options.args.sle = {
+	type = "group",
+	name = L["Shadow & Light Edit"],
+    order = 50,
+   	args = {
+		header = {
+			order = 1,
+			type = "header",
+			name = L["Shadow & Light Edit of ElvUI"],
+		},
+		info = {
+			order = 2,
+			type = "description",
+			name = L["SLE_DESC"],
+		},
+		general = {
+			order = 3,
+			type = "group",
+			name = L["General"],
+			guiInline = true,
+			args = {
+				lfrshow = {
+					order = 1,
+					type = "toggle",
+					name = L["LFR Lockdown"],
+					desc = L["Show/Hide LFR lockdown info in time datatext's tooltip."],
+					get = function(info) return E.db.datatexts.lfrshow end,
+					set = function(info, value) E.db.datatexts.lfrshow = value; end
+				},
+				lootwindow = {
+					order = 4,
+					type = "toggle",
+					name = "Autoloot",
+					desc = "Enable/Disable Autoloot window",
+					get = function(info) return E.db.sle.lootwin end,
+					set = function(info, value) E.db.sle.lootwin = value; end
+				},
+			},
+		},
+	},
+}
+--[[
+E.Options.args.sle.args.general.args.autoloot = {
+	order = 2,
+	type = "toggle",
+	name = "Autoloot",
+	desc = "Enable/Disable Autoloot window",
+	get = function(info) return E.db.sle.autoloot end,
+	set = function(info, value) E.db.sle.autoloot = value; end
+}
+]]
+--Credits
+E.Options.args.sle.args.credits = {
+	order = 200,
+	type = 'group',
+	name = L["Credits"],
+	args = {
+		creditheader = {
+			order = 1,
+			type = "header",
+			name = L["Credits"],
+		},
+		credits = {
+			order = 2,
+			type = "description",
+			name = L["ELVUI_SLE_CREDITS"]..'\n\n\n'..L["Submodules and Coding:"]..'\n\n'..L["ELVUI_SLE_CODERS"]..'\n\n\n'..L["Other Support:"]..'\n\n'..L["ELVUI_SLE_MISC"],
+		},
+	},
+}
\ No newline at end of file
diff --git a/ElvUI_SLE/modules/skins/addons/load_addons.xml b/ElvUI_SLE/modules/skins/addons/load_addons.xml
deleted file mode 100644
index 45ff8cb..0000000
--- a/ElvUI_SLE/modules/skins/addons/load_addons.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<Ui xmlns="http://www.blizzard.com/wow/ui/">
-	<Script file='notes.lua'/>
-	<Script file='oces.lua'/>
-	<Script file='tdb.lua'/>
-</Ui>
\ No newline at end of file
diff --git a/ElvUI_SLE/modules/skins/addons/notes.lua b/ElvUI_SLE/modules/skins/addons/notes.lua
deleted file mode 100644
index 60a9635..0000000
--- a/ElvUI_SLE/modules/skins/addons/notes.lua
+++ /dev/null
@@ -1,80 +0,0 @@
-local E, L, V, P, G, _ = unpack(ElvUI); --Inport: Engine, Locales, PrivateDB, ProfileDB, GlobalDB, Localize Underscore
-local S = E:GetModule('Skins')
-
-local function LoadSkin()
-
-	--if E.private.skins.notes.enable ~= true then return end
-
-	local StripAllTextures = {
-                "NotesFrame",
-                "NotesFrameScrollFrame",
-				"EditNotesFrame",
-				"ConfigNotesFrame",
-				"TextScrollFrame",
-	}
-
-
-	for _, object in pairs(StripAllTextures) do
-							_G[object]:StripTextures()
-				end
-
-	--Handling buttons, frames, etc
-	S:HandleButton(NotesFrameCreateNoteButton, true)
-	S:HandleButton(ConfigNotesFrame, true)
-	S:HandleButton(Notes_AddActQuestInfo, true)
-	S:HandleButton(NotesFrameCopyNoteButton, true)
-	S:HandleButton(NotesFrameDeleteNoteButton, true)
-	S:HandleButton(NotesFrameSendNoteButton, true)
-	S:HandleButton(NotesFrameCancelButton, true)
-	S:HandleScrollBar(NotesFrameScrollFrameScrollBar)
-	S:HandleScrollBar(TextScrollFrameScrollBar)
-	S:HandleCloseButton(NotesFrameCloseButton, true)
-	S:HandleDropDownBox(Notes_AddQuestInfoDropDown)
-	S:HandleDropDownBox(Notes_TypeDropDown)
-
-	--Setting themplates. All transparent cause I like it
-	NotesFrame:SetTemplate("Transparent")
-	NotesFrameScrollFrame:SetTemplate("Transparent")
-	TextScrollFrame:SetTemplate("Transparent")
-
-	--Setting text color for uor notes
-	TextBodyEditBox:SetTextColor(1, 1, 1)
-
-	--Setting new sizes for buttons, dropdowns, etc
-	--Clear points
-	NotesFrameScrollFrame:ClearAllPoints()
-	TextScrollFrame:ClearAllPoints()
-	NotesFrameScrollFrameScrollBar:ClearAllPoints()
-	TextScrollFrameScrollBar:ClearAllPoints()
-	NotesFrameCreateNoteButton:ClearAllPoints()
-	NotesFrameCopyNoteButton:ClearAllPoints()
-	NotesFrameDeleteNoteButton:ClearAllPoints()
-	NotesFrameSendNoteButton:ClearAllPoints()
-	ConfigNotesFrame:ClearAllPoints()
-	Notes_TypeDropDown:ClearAllPoints()
-	--Sizes
-	NotesFrameScrollFrame:SetSize(305, 336)
-	TextScrollFrame:SetSize(290, 336)
-	NotesFrameScrollFrameScrollBar:SetSize(20, 308)
-	TextScrollFrameScrollBar:SetSize(20, 304)
-	NotesFrameCreateNoteButton:SetSize(80, 21)
-	NotesFrameCopyNoteButton:SetSize(80, 21)
-	NotesFrameDeleteNoteButton:SetSize(80, 21)
-	NotesFrameSendNoteButton:SetSize(80, 21)
-	ConfigNotesFrame:SetSize(654, 40)
-	Notes_TypeDropDown:SetSize(160, 20)
-
-	--Setting new positions for buttons, dropdowns, etc
-	NotesFrameScrollFrame:Point("BOTTOMLEFT", NotesFrame, "BOTTOMLEFT", 15, 38)
-	TextScrollFrame:Point("LEFT", NotesFrameScrollFrameScrollBar, "RIGHT", 20, 0)
-	NotesFrameScrollFrameScrollBar:Point("LEFT", NotesFrameScrollFrame, "RIGHT", 0, 0)
-	TextScrollFrameScrollBar:Point("LEFT", TextScrollFrame, "RIGHT", 0, 0)
-	NotesFrameCreateNoteButton:Point("TOPLEFT", NotesFrameScrollFrame, "BOTTOMLEFT", 0, -4)
-	NotesFrameCopyNoteButton:Point("LEFT", NotesFrameCreateNoteButton, "RIGHT", 2, 0)
-	NotesFrameDeleteNoteButton:Point("LEFT", NotesFrameCopyNoteButton, "RIGHT", 2, 0)
-	NotesFrameSendNoteButton:Point("LEFT", NotesFrameDeleteNoteButton, "RIGHT", 2, 0)
-	ConfigNotesFrame:Point("BOTTOMLEFT", NotesFrameScrollFrame, "TOPLEFT", 0, 2)
-	Notes_TypeDropDown:Point("RIGHT", ConfigNotesFrame, "RIGHT", -5, -4)
-end
-
-S:RegisterSkin("Notes", LoadSkin)
\ No newline at end of file
diff --git a/ElvUI_SLE/modules/skins/addons/oces.lua b/ElvUI_SLE/modules/skins/addons/oces.lua
deleted file mode 100644
index a5f685e..0000000
--- a/ElvUI_SLE/modules/skins/addons/oces.lua
+++ /dev/null
@@ -1,7 +0,0 @@
-local E, L, V, P, G, _ = unpack(ElvUI); --Inport: Engine, Locales, PrivateDB, ProfileDB, GlobalDB, Localize Underscore
-local S = E:GetModule('Skins')
-
-local function LoadSkin()
-	S:HandleButton(TradeSkillCreateScrollButton, true)
-end
-S:RegisterSkin('OneClickEnchantScroll', LoadSkin)
\ No newline at end of file
diff --git a/ElvUI_SLE/modules/skins/addons/tdb.lua b/ElvUI_SLE/modules/skins/addons/tdb.lua
deleted file mode 100644
index eda9c35..0000000
--- a/ElvUI_SLE/modules/skins/addons/tdb.lua
+++ /dev/null
@@ -1,33 +0,0 @@
-local E, L, V, P, G, _ = unpack(ElvUI); --Inport: Engine, Locales, PrivateDB, ProfileDB, GlobalDB, Localize Underscore
-local S = E:GetModule('Skins')
-
-local function LoadSkin()
-	--Tab1 LFG
-	libTabTabDBtabs1:StripTextures()
-	S:HandleTab(libTabTabDBtabs1)
-	libTabTabDBtabs1:SetTemplate("Default")
-	libTabTabDBtabs1.tex = libTabTabDBtabs1:CreateTexture(nil, 'OVERLAY')
-	libTabTabDBtabs1.tex:Point('TOPLEFT', libTabTabDBtabs1, 'TOPLEFT', 2, -2)
-	libTabTabDBtabs1.tex:Point('BOTTOMRIGHT', libTabTabDBtabs1, 'BOTTOMRIGHT', -2, 2)
-	libTabTabDBtabs1.tex:SetTexture("Interface\\LFGFrame\\UI-LFG-PORTRAIT")
-
-	--Tab2 LFR
-	libTabTabDBtabs2:StripTextures()
-	S:HandleTab(libTabTabDBtabs2)
-	libTabTabDBtabs2:SetTemplate("Default")
-	libTabTabDBtabs2.tex = libTabTabDBtabs2:CreateTexture(nil, 'OVERLAY')
-	libTabTabDBtabs2.tex:Point('TOPLEFT', libTabTabDBtabs2, 'TOPLEFT', 2, -3)
-	libTabTabDBtabs2.tex:Point('BOTTOMRIGHT', libTabTabDBtabs2, 'BOTTOMRIGHT', -2, 1)
-	libTabTabDBtabs2.tex:SetTexture("Interface\\LFGFrame\\UI-LFR-PORTRAIT")
-
-	--Tab3 PvP
-	libTabTabDBtabs3:StripTextures()
-	S:HandleTab(libTabTabDBtabs3)
-	libTabTabDBtabs3:SetTemplate("Default")
-	libTabTabDBtabs3.tex = libTabTabDBtabs3:CreateTexture(nil, 'OVERLAY')
-	libTabTabDBtabs3.tex:Point('TOPLEFT', libTabTabDBtabs3, 'TOPLEFT', 2, -2)
-	libTabTabDBtabs3.tex:Point('BOTTOMRIGHT', libTabTabDBtabs3, 'BOTTOMRIGHT', -2, 2)
-	libTabTabDBtabs3.tex:SetTexture("Interface\\BattlefieldFrame\\UI-Battlefield-Icon")
-end
-
-S:RegisterSkin("tabDB", LoadSkin)
\ No newline at end of file
diff --git a/ElvUI_SLE/modules/skins/blizzard/extraab.lua b/ElvUI_SLE/modules/skins/blizzard/extraab.lua
deleted file mode 100644
index 4a67b59..0000000
--- a/ElvUI_SLE/modules/skins/blizzard/extraab.lua
+++ /dev/null
@@ -1,26 +0,0 @@
-local E, L, V, P, G, _ = unpack(ElvUI); --Inport: Engine, Locales, PrivateDB, ProfileDB, GlobalDB, Localize Underscore
-
-local function PositionHookUpdate()
-	-- hook the ExtraActionButton1 texture, idea by roth via WoWInterface forums
-	-- code taken from Tukui
-	local button = ExtraActionButton1
-	local icon = button.icon
-	local texture = button.style
-
-	local function disableTexture(style, texture)
-		if string.sub(texture,1,9) == "Interface" then
-			style:SetTexture("")
-		end
-	end
-	button.style:SetTexture("")
-	hooksecurefunc(texture, "SetTexture", disableTexture)
-end
-
-local frame = CreateFrame("Frame", nil, nil)
-frame:RegisterEvent("PLAYER_ENTERING_WORLD")
-frame:SetScript("OnEvent",function(self, event)
-	if event == "PLAYER_ENTERING_WORLD" then
-		PositionHookUpdate()
-		frame:UnregisterEvent("PLAYER_ENTERING_WORLD")
-	end
-end)
\ No newline at end of file
diff --git a/ElvUI_SLE/modules/skins/blizzard/load_blizzard.xml b/ElvUI_SLE/modules/skins/blizzard/load_blizzard.xml
deleted file mode 100644
index cceaf92..0000000
--- a/ElvUI_SLE/modules/skins/blizzard/load_blizzard.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<Ui xmlns="http://www.blizzard.com/wow/ui/">
-	<Script file='extraab.lua'/>
-	<Script file='petbattle.lua'/>
-	<Script file='searchmounts.lua'/>
-</Ui>
\ No newline at end of file
diff --git a/ElvUI_SLE/modules/skins/blizzard/misc.lua b/ElvUI_SLE/modules/skins/blizzard/misc.lua
deleted file mode 100644
index f96bfc6..0000000
--- a/ElvUI_SLE/modules/skins/blizzard/misc.lua
+++ /dev/null
@@ -1,687 +0,0 @@
-local E, L, V, P, G = unpack(ElvUI); --Inport: Engine, Locales, PrivateDB, ProfileDB, GlobalDB
-local S = E:GetModule('Skins')
-
---Credit to Pat
-
-local function LoadSkin()
-	if E.private.skins.blizzard.enable ~= true or E.private.skins.blizzard.misc ~= true then return end
-	-- Blizzard frame we want to reskin
-	local skins = {
-		"StaticPopup1",
-		"StaticPopup2",
-		"StaticPopup3",
-		"GameMenuFrame",
-		"InterfaceOptionsFrame",
-		"VideoOptionsFrame",
-		"AudioOptionsFrame",
-		"BNToastFrame",
-		"TicketStatusFrameButton",
-		"DropDownList1MenuBackdrop",
-		"DropDownList2MenuBackdrop",
-		"DropDownList1Backdrop",
-		"DropDownList2Backdrop",
-		"AutoCompleteBox",
-		"ConsolidatedBuffsTooltip",
-		"ReadyCheckFrame",
-		"StackSplitFrame",
-	}
-
-
-	for i = 1, getn(skins) do
-		_G[skins[i]]:SetTemplate("Transparent")
-		if _G[skins[i]] ~= _G["GhostFrameContentsFrame"] or _G[skins[i]] ~= _G["AutoCompleteBox"] then -- frame to blacklist from create shadow function
-			_G[skins[i]]:CreateShadow("Default")
-		end
-	end
-
-
-	local ChatMenus = {
-		"ChatMenu",
-		"EmoteMenu",
-		"LanguageMenu",
-		"VoiceMacroMenu",
-	}
-	--
-	for i = 1, getn(ChatMenus) do
-		if _G[ChatMenus[i]] == _G["ChatMenu"] then
-			_G[ChatMenus[i]]:HookScript("OnShow", function(self) self:SetTemplate("Default", true) self:SetBackdropColor(unpack(E['media'].backdropfadecolor)) self:ClearAllPoints() self:Point("BOTTOMLEFT", ChatFrame1, "TOPLEFT", 0, 30) end)
-		else
-			_G[ChatMenus[i]]:HookScript("OnShow", function(self) self:SetTemplate("Default", true) self:SetBackdropColor(unpack(E['media'].backdropfadecolor)) end)
-		end
-	end
-
-	--LFD Role Picker frame
-	LFDRoleCheckPopup:StripTextures()
-	LFDRoleCheckPopup:SetTemplate("Transparent")
-	S:HandleButton(LFDRoleCheckPopupAcceptButton)
-	S:HandleButton(LFDRoleCheckPopupDeclineButton)
-	S:HandleCheckBox(LFDRoleCheckPopupRoleButtonTank:GetChildren())
-	S:HandleCheckBox(LFDRoleCheckPopupRoleButtonDPS:GetChildren())
-	S:HandleCheckBox(LFDRoleCheckPopupRoleButtonHealer:GetChildren())
-	LFDRoleCheckPopupRoleButtonTank:GetChildren():SetFrameLevel(LFDRoleCheckPopupRoleButtonTank:GetChildren():GetFrameLevel() + 1)
-	LFDRoleCheckPopupRoleButtonDPS:GetChildren():SetFrameLevel(LFDRoleCheckPopupRoleButtonDPS:GetChildren():GetFrameLevel() + 1)
-	LFDRoleCheckPopupRoleButtonHealer:GetChildren():SetFrameLevel(LFDRoleCheckPopupRoleButtonHealer:GetChildren():GetFrameLevel() + 1)
-
-	-- reskin popup buttons
-	for i = 1, 3 do
-		for j = 1, 3 do
-			S:HandleButton(_G["StaticPopup"..i.."Button"..j])
-			S:HandleEditBox(_G["StaticPopup"..i.."EditBox"])
-			S:HandleEditBox(_G["StaticPopup"..i.."MoneyInputFrameGold"])
-			S:HandleEditBox(_G["StaticPopup"..i.."MoneyInputFrameSilver"])
-			S:HandleEditBox(_G["StaticPopup"..i.."MoneyInputFrameCopper"])
-			_G["StaticPopup"..i.."EditBox"].backdrop:Point("TOPLEFT", -2, -4)
-			_G["StaticPopup"..i.."EditBox"].backdrop:Point("BOTTOMRIGHT", 2, 4)
-			_G["StaticPopup"..i.."ItemFrameNameFrame"]:Kill()
-			_G["StaticPopup"..i.."ItemFrame"]:GetNormalTexture():Kill()
-			_G["StaticPopup"..i.."ItemFrame"]:SetTemplate("Default")
-			_G["StaticPopup"..i.."ItemFrame"]:StyleButton()
-			_G["StaticPopup"..i.."ItemFrameIconTexture"]:SetTexCoord(unpack(E.TexCoords))
-			_G["StaticPopup"..i.."ItemFrameIconTexture"]:ClearAllPoints()
-			_G["StaticPopup"..i.."ItemFrameIconTexture"]:Point("TOPLEFT", 2, -2)
-			_G["StaticPopup"..i.."ItemFrameIconTexture"]:Point("BOTTOMRIGHT", -2, 2)
-		end
-	end
-
-	-- reskin all esc/menu buttons
-	local BlizzardMenuButtons = {
-		"Options",
-		"SoundOptions",
-		"UIOptions",
-		"Keybindings",
-		"Macros",
-		"Ratings",
-		"AddOns",
-		"Logout",
-		"Quit",
-		"Continue",
-		"MacOptions",
-		"Help"
-	}
-
-	for i = 1, getn(BlizzardMenuButtons) do
-		local ElvuiMenuButtons = _G["GameMenuButton"..BlizzardMenuButtons[i]]
-		if ElvuiMenuButtons then
-			S:HandleButton(ElvuiMenuButtons)
-		end
-	end
-
-	if IsAddOnLoaded("OptionHouse") then
-		S:HandleButton(GameMenuButtonOptionHouse)
-	end
-
-	-- skin return to graveyard button
-	do
-		S:HandleButton(GhostFrame)
-		GhostFrame:SetBackdropColor(0,0,0,0)
-		GhostFrame:SetBackdropBorderColor(0,0,0,0)
-		GhostFrame.SetBackdropColor = E.noop
-		GhostFrame.SetBackdropBorderColor = E.noop
-		GhostFrame:ClearAllPoints()
-		GhostFrame:SetPoint("TOP", E.UIParent, "TOP", 0, -150)
-		S:HandleButton(GhostFrameContentsFrame)
-		GhostFrameContentsFrameIcon:SetTexture(nil)
-		local x = CreateFrame("Frame", nil, GhostFrame)
-		x:SetFrameStrata("MEDIUM")
-		x:SetTemplate("Default")
-		x:Point("TOPLEFT", GhostFrameContentsFrameIcon, "TOPLEFT", -2, 2)
-		x:SetPoint("BOTTOMRIGHT", GhostFrameContentsFrameIcon, "BOTTOMRIGHT", 2, -2)
-		local tex = x:CreateTexture(nil, "OVERLAY")
-		tex:SetTexture("Interface\\Icons\\spell_holy_guardianspirit")
-		tex:SetTexCoord(0.1, 0.9, 0.1, 0.9)
-		tex:Point("TOPLEFT", x, "TOPLEFT", 2, -2)
-		tex:Point("BOTTOMRIGHT", x, "BOTTOMRIGHT", -2, 2)
-	end
-
-	-- hide header textures and move text/buttons.
-	local BlizzardHeader = {
-		"GameMenuFrame",
-		"InterfaceOptionsFrame",
-		"AudioOptionsFrame",
-		"VideoOptionsFrame",
-	}
-
-	for i = 1, getn(BlizzardHeader) do
-		local title = _G[BlizzardHeader[i].."Header"]
-		if title then
-			title:SetTexture("")
-			title:ClearAllPoints()
-			if title == _G["GameMenuFrameHeader"] then
-				title:SetPoint("TOP", GameMenuFrame, 0, 7)
-			else
-				title:SetPoint("TOP", BlizzardHeader[i], 0, 0)
-			end
-		end
-	end
-
-	--Skinning Checkboxes--
-	local optioncheckbox = {
-		-- Advanced
-		"Advanced_MaxFPSCheckBox",
-		"Advanced_MaxFPSBKCheckBox",
-		"Advanced_UseUIScale",
-		-- Audio
-		"AudioOptionsSoundPanelEnableSound",
-		"AudioOptionsSoundPanelSoundEffects",
-		"AudioOptionsSoundPanelErrorSpeech",
-		"AudioOptionsSoundPanelEmoteSounds",
-		"AudioOptionsSoundPanelPetSounds",
-		"AudioOptionsSoundPanelMusic",
-		"AudioOptionsSoundPanelLoopMusic",
-		"AudioOptionsSoundPanelAmbientSounds",
-		"AudioOptionsSoundPanelSoundInBG",
-		"AudioOptionsSoundPanelReverb",
-		"AudioOptionsSoundPanelHRTF",
-		"AudioOptionsSoundPanelEnableDSPs",
-		"AudioOptionsSoundPanelUseHardware",
-		"AudioOptionsVoicePanelEnableVoice",
-		"AudioOptionsVoicePanelEnableMicrophone",
-		"AudioOptionsVoicePanelPushToTalkSound",
-		-- Network
-		"NetworkOptionsPanelOptimizeSpeed",
-		"NetworkOptionsPanelUseIPv6",
-	}
-
-	for i = 1, getn(optioncheckbox) do
-		local ocheckbox = _G[optioncheckbox[i]]
-		if ocheckbox then
-			S:HandleCheckBox(ocheckbox)
-		end
-	end
-
-	local interfacecheckbox = {
-		-- Controls
-		"ControlsPanelStickyTargeting",
-		"ControlsPanelAutoDismount",
-		"ControlsPanelAutoClearAFK",
-		"ControlsPanelBlockTrades",
-		"ControlsPanelBlockGuildInvites",
-		"ControlsPanelLootAtMouse",
-		"ControlsPanelAutoLootCorpse",
-		"ControlsPanelInteractOnLeftClick",
-		-- Combat
-		"CombatPanelAttackOnAssist",
-		"CombatPanelStopAutoAttack",
-		"CombatPanelNameplateClassColors",
-		"CombatPanelTargetOfTarget",
-		"CombatPanelShowSpellAlerts",
-		"CombatPanelReducedLagTolerance",
-		"CombatPanelActionButtonUseKeyDown",
-		"CombatPanelEnemyCastBarsOnPortrait",
-		"CombatPanelEnemyCastBarsOnNameplates",
-		"CombatPanelAutoSelfCast",
-		-- Display
-		"DisplayPanelShowCloak",
-		"DisplayPanelShowHelm",
-		"DisplayPanelShowAggroPercentage",
-		"DisplayPanelPlayAggroSounds",
-		"DisplayPanelDetailedLootInfo",
-		"DisplayPanelShowSpellPointsAvg",
-		"DisplayPanelemphasizeMySpellEffects",
-		"DisplayPanelShowFreeBagSpace",
-		"DisplayPanelCinematicSubtitles",
-		"DisplayPanelRotateMinimap",
-		"DisplayPanelScreenEdgeFlash",
-		--Objectives
-		"ObjectivesPanelAutoQuestTracking",
-		"ObjectivesPanelAutoQuestProgress",
-		"ObjectivesPanelMapQuestDifficulty",
-		"ObjectivesPanelAdvancedWorldMap",
-		"ObjectivesPanelWatchFrameWidth",
-		-- Social
-		"SocialPanelProfanityFilter",
-		"SocialPanelSpamFilter",
-		"SocialPanelChatBubbles",
-		"SocialPanelPartyChat",
-		"SocialPanelChatHoverDelay",
-		"SocialPanelGuildMemberAlert",
-		"SocialPanelChatMouseScroll",
-		-- Action bars
-		"ActionBarsPanelLockActionBars",
-		"ActionBarsPanelSecureAbilityToggle",
-		"ActionBarsPanelAlwaysShowActionBars",
-		"ActionBarsPanelBottomLeft",
-		"ActionBarsPanelBottomRight",
-		"ActionBarsPanelRight",
-		"ActionBarsPanelRightTwo",
-		-- Names
-		"NamesPanelMyName",
-		"NamesPanelFriendlyPlayerNames",
-		"NamesPanelFriendlyPets",
-		"NamesPanelFriendlyGuardians",
-		"NamesPanelFriendlyTotems",
-		"NamesPanelUnitNameplatesFriends",
-		"NamesPanelUnitNameplatesFriendlyGuardians",
-		"NamesPanelUnitNameplatesFriendlyPets",
-		"NamesPanelUnitNameplatesFriendlyTotems",
-		"NamesPanelGuilds",
-		"NamesPanelGuildTitles",
-		"NamesPanelTitles",
-		"NamesPanelNonCombatCreature",
-		"NamesPanelEnemyPlayerNames",
-		"NamesPanelEnemyPets",
-		"NamesPanelEnemyGuardians",
-		"NamesPanelEnemyTotems",
-		"NamesPanelUnitNameplatesEnemyPets",
-		"NamesPanelUnitNameplatesEnemies",
-		"NamesPanelUnitNameplatesEnemyGuardians",
-		"NamesPanelUnitNameplatesEnemyTotems",
-		-- Combat Text
-		"CombatTextPanelTargetDamage",
-		"CombatTextPanelPeriodicDamage",
-		"CombatTextPanelPetDamage",
-		"CombatTextPanelHealing",
-		"CombatTextPanelTargetEffects",
-		"CombatTextPanelOtherTargetEffects",
-		"CombatTextPanelEnableFCT",
-		"CombatTextPanelDodgeParryMiss",
-		"CombatTextPanelDamageReduction",
-		"CombatTextPanelRepChanges",
-		"CombatTextPanelReactiveAbilities",
-		"CombatTextPanelFriendlyHealerNames",
-		"CombatTextPanelCombatState",
-		"CombatTextPanelComboPoints",
-		"CombatTextPanelLowManaHealth",
-		"CombatTextPanelEnergyGains",
-		"CombatTextPanelPeriodicEnergyGains",
-		"CombatTextPanelHonorGains",
-		"CombatTextPanelAuras",
-		-- Buffs & Debuffs
-		"BuffsPanelBuffDurations",
-		"BuffsPanelDispellableDebuffs",
-		"BuffsPanelCastableBuffs",
-		"BuffsPanelConsolidateBuffs",
-		"BuffsPanelShowAllEnemyDebuffs",
-		-- Camera
-		"CameraPanelFollowTerrain",
-		"CameraPanelHeadBob",
-		"CameraPanelWaterCollision",
-		"CameraPanelSmartPivot",
-		-- Mouse
-		"MousePanelInvertMouse",
-		"MousePanelClickToMove",
-		"MousePanelWoWMouse",
-		-- Help
-		"HelpPanelShowTutorials",
-		"HelpPanelLoadingScreenTips",
-		"HelpPanelEnhancedTooltips",
-		"HelpPanelBeginnerTooltips",
-		"HelpPanelShowLuaErrors",
-		"HelpPanelColorblindMode",
-		"HelpPanelMovePad",
-		"BattlenetPanelOnlineFriends",
-		"BattlenetPanelOfflineFriends",
-		"BattlenetPanelBroadcasts",
-		"BattlenetPanelFriendRequests",
-		"BattlenetPanelConversations",
-		"BattlenetPanelShowToastWindow",
-		-- Status Text
-		"StatusTextPanelPlayer",
-		"StatusTextPanelPet",
-		"StatusTextPanelParty",
-		"StatusTextPanelTarget",
-		"StatusTextPanelAlternateResource",
-		"StatusTextPanelPercentages",
-		"StatusTextPanelXP",
-		-- Unit Frames
-		"UnitFramePanelPartyBackground",
-		"UnitFramePanelPartyPets",
-		"UnitFramePanelArenaEnemyFrames",
-		"UnitFramePanelArenaEnemyCastBar",
-		"UnitFramePanelArenaEnemyPets",
-		"UnitFramePanelFullSizeFocusFrame",
-	}
-
-	for i = 1, getn(interfacecheckbox) do
-		local icheckbox = _G["InterfaceOptions"..interfacecheckbox[i]]
-		if icheckbox then
-			S:HandleCheckBox(icheckbox)
-		end
-	end
-
---End Skinning Checkboxes--
-
-	--Skinning dropdownds--
-	local optiondropdown = {
-		-- Graphics
-		"Graphics_DisplayModeDropDown",
-		"Graphics_ResolutionDropDown",
-		"Graphics_RefreshDropDown",
-		"Graphics_PrimaryMonitorDropDown",
-		"Graphics_MultiSampleDropDown",
-		"Graphics_VerticalSyncDropDown",
-		"Graphics_TextureResolutionDropDown",
-		"Graphics_FilteringDropDown",
-		"Graphics_ProjectedTexturesDropDown",
-		"Graphics_ViewDistanceDropDown",
-		"Graphics_EnvironmentalDetailDropDown",
-		"Graphics_GroundClutterDropDown",
-		"Graphics_ShadowsDropDown",
-		"Graphics_LiquidDetailDropDown",
-		"Graphics_SunshaftsDropDown",
-		"Graphics_ParticleDensityDropDown",
-		-- Advanced
-		"Advanced_BufferingDropDown",
-		"Advanced_LagDropDown",
-		"Advanced_HardwareCursorDropDown",
-		"Advanced_GraphicsAPIDropDown",
-		-- Audio
-		"AudioOptionsSoundPanelHardwareDropDown",
-		"AudioOptionsSoundPanelSoundChannelsDropDown",
-		"AudioOptionsVoicePanelInputDeviceDropDown",
-		"AudioOptionsVoicePanelChatModeDropDown",
-		"AudioOptionsVoicePanelOutputDeviceDropDown",
-		-- Raid Profiles
-		"CompactUnitFrameProfilesProfileSelector",
-		"CompactUnitFrameProfilesGeneralOptionsFrameHealthTextDropdown",
-		"CompactUnitFrameProfilesGeneralOptionsFrameSortByDropdown",
-	}
-
-	for i = 1, getn(optiondropdown) do
-		local odropdown = _G[optiondropdown[i]]
-		if odropdown then
-			S:HandleDropDownBox(odropdown,165)
-			DropDownList1:SetTemplate("Transparent")
-		end
-	end
-
-	local interfacedropdown ={
-		-- Controls
-		"ControlsPanelAutoLootKeyDropDown",
-		-- Combat
-		"CombatPanelTOTDropDown",
-		"CombatPanelFocusCastKeyDropDown",
-		"CombatPanelSelfCastKeyDropDown",
-		-- Display
-		"DisplayPanelAggroWarningDisplay",
-		"DisplayPanelWorldPVPObjectiveDisplay",
-		-- Social
-		"SocialPanelChatStyle",
-		"SocialPanelWhisperMode",
-		"SocialPanelTimestamps",
-		"SocialPanelBnWhisperMode",
-		"SocialPanelConversationMode",
-		-- Action bars
-		"ActionBarsPanelPickupActionKeyDropDown",
-		-- Names
-		"NamesPanelNPCNamesDropDown",
-		"NamesPanelUnitNameplatesMotionDropDown",
-		-- Combat Text
-		"CombatTextPanelFCTDropDown",
-		-- Camera
-		"CameraPanelStyleDropDown",
-		-- Mouse
-		"MousePanelClickMoveStyleDropDown",
-		"LanguagesPanelLocaleDropDown",
-	}
-
-	for i = 1, getn(interfacedropdown) do
-		local idropdown = _G["InterfaceOptions"..interfacedropdown[i]]
-		if idropdown then
-			S:HandleDropDownBox(idropdown)
-			DropDownList1:SetTemplate("Transparent")
-		end
-	end
-	--end skinning dropdowns--
-
-	S:HandleButton(InterfaceOptionsHelpPanelResetTutorials) --Reset tutorials button
-
-	-- here we reskin all "normal" buttons
-	local BlizzardButtons = {
-		"VideoOptionsFrameOkay",
-		"VideoOptionsFrameCancel",
-		"VideoOptionsFrameDefaults",
-		"VideoOptionsFrameApply",
-		"AudioOptionsFrameOkay",
-		"AudioOptionsFrameCancel",
-		"AudioOptionsFrameDefaults",
-		"InterfaceOptionsFrameDefaults",
-		"InterfaceOptionsFrameOkay",
-		"InterfaceOptionsFrameCancel",
-		"ReadyCheckFrameYesButton",
-		"ReadyCheckFrameNoButton",
-		"StackSplitOkayButton",
-		"StackSplitCancelButton",
-		"RolePollPopupAcceptButton"
-	}
-
-	for i = 1, getn(BlizzardButtons) do
-		local ElvuiButtons = _G[BlizzardButtons[i]]
-		if ElvuiButtons then
-			S:HandleButton(ElvuiButtons)
-		end
-	end
-
-	-- if a button position is not really where we want, we move it here
-	VideoOptionsFrameCancel:ClearAllPoints()
-	VideoOptionsFrameCancel:SetPoint("RIGHT",VideoOptionsFrameApply,"LEFT",-4,0)
-	VideoOptionsFrameOkay:ClearAllPoints()
-	VideoOptionsFrameOkay:SetPoint("RIGHT",VideoOptionsFrameCancel,"LEFT",-4,0)
-	AudioOptionsFrameOkay:ClearAllPoints()
-	AudioOptionsFrameOkay:SetPoint("RIGHT",AudioOptionsFrameCancel,"LEFT",-4,0)
-	InterfaceOptionsFrameOkay:ClearAllPoints()
-	InterfaceOptionsFrameOkay:SetPoint("RIGHT",InterfaceOptionsFrameCancel,"LEFT", -4,0)
-	ReadyCheckFrameYesButton:SetParent(ReadyCheckFrame)
-	ReadyCheckFrameNoButton:SetParent(ReadyCheckFrame)
-	ReadyCheckFrameYesButton:SetPoint("RIGHT", ReadyCheckFrame, "CENTER", -1, 0)
-	ReadyCheckFrameNoButton:SetPoint("LEFT", ReadyCheckFrameYesButton, "RIGHT", 3, 0)
-	ReadyCheckFrameText:SetParent(ReadyCheckFrame)
-	ReadyCheckFrameText:ClearAllPoints()
-	ReadyCheckFrameText:SetPoint("TOP", 0, -12)
-
-	-- others
-	ReadyCheckListenerFrame:SetAlpha(0)
-	ReadyCheckFrame:HookScript("OnShow", function(self) if UnitIsUnit("player", self.initiator) then self:Hide() end end) -- bug fix, don't show it if initiator
-	StackSplitFrame:GetRegions():Hide()
-
-
-	RolePollPopup:SetTemplate("Transparent")
-	RolePollPopup:CreateShadow("Default")
-
-	InterfaceOptionsFrame:SetClampedToScreen(true)
-	InterfaceOptionsFrame:SetMovable(true)
-	InterfaceOptionsFrame:EnableMouse(true)
-	InterfaceOptionsFrame:RegisterForDrag("LeftButton", "RightButton")
-	InterfaceOptionsFrame:SetScript("OnDragStart", function(self)
-		if InCombatLockdown() then return end
-
-		if IsShiftKeyDown() then
-			self:StartMoving()
-		end
-	end)
-	InterfaceOptionsFrame:SetScript("OnDragStop", function(self)
-		self:StopMovingOrSizing()
-	end)
-
-	-- mac menu/option panel, made by affli.
-	if IsMacClient() then
-		-- Skin main frame and reposition the header
-		MacOptionsFrame:SetTemplate("Default", true)
-		MacOptionsFrameHeader:SetTexture("")
-		MacOptionsFrameHeader:ClearAllPoints()
-		MacOptionsFrameHeader:SetPoint("TOP", MacOptionsFrame, 0, 0)
-
-		--Skin internal frames
-		MacOptionsFrameMovieRecording:SetTemplate("Default", true)
-		MacOptionsITunesRemote:SetTemplate("Default", true)
-
-		--Skin buttons
-		S:HandleButton(MacOptionsFrameCancel)
-		S:HandleButton(MacOptionsFrameOkay)
-		S:HandleButton(MacOptionsButtonKeybindings)
-		S:HandleButton(MacOptionsFrameDefaults)
-		S:HandleButton(MacOptionsButtonCompress)
-
-		--Reposition and resize buttons
-		local tPoint, tRTo, tRP, tX, tY =  MacOptionsButtonCompress:GetPoint()
-		MacOptionsButtonCompress:SetWidth(136)
-		MacOptionsButtonCompress:ClearAllPoints()
-		MacOptionsButtonCompress:Point(tPoint, tRTo, tRP, 4, tY)
-
-		MacOptionsFrameCancel:SetWidth(96)
-		MacOptionsFrameCancel:SetHeight(22)
-		tPoint, tRTo, tRP, tX, tY =  MacOptionsFrameCancel:GetPoint()
-		MacOptionsFrameCancel:ClearAllPoints()
-		MacOptionsFrameCancel:Point(tPoint, tRTo, tRP, -14, tY)
-
-		MacOptionsFrameOkay:ClearAllPoints()
-		MacOptionsFrameOkay:SetWidth(96)
-		MacOptionsFrameOkay:SetHeight(22)
-		MacOptionsFrameOkay:Point("LEFT",MacOptionsFrameCancel, -99,0)
-
-		MacOptionsButtonKeybindings:ClearAllPoints()
-		MacOptionsButtonKeybindings:SetWidth(96)
-		MacOptionsButtonKeybindings:SetHeight(22)
-		MacOptionsButtonKeybindings:Point("LEFT",MacOptionsFrameOkay, -99,0)
-
-		MacOptionsFrameDefaults:SetWidth(96)
-		MacOptionsFrameDefaults:SetHeight(22)
-
-		-- why these buttons is using game menu template? oO
-		MacOptionsButtonCompressLeft:SetAlpha(0)
-		MacOptionsButtonCompressMiddle:SetAlpha(0)
-		MacOptionsButtonCompressRight:SetAlpha(0)
-		MacOptionsButtonKeybindingsLeft:SetAlpha(0)
-		MacOptionsButtonKeybindingsMiddle:SetAlpha(0)
-		MacOptionsButtonKeybindingsRight:SetAlpha(0)
-	end
-
-	OpacityFrame:StripTextures()
-	OpacityFrame:SetTemplate("Transparent")
-	for i=1, WatchFrameCollapseExpandButton:GetNumRegions() do
-		local region = select(i, WatchFrameCollapseExpandButton:GetRegions())
-		if region:GetObjectType() == 'Texture' then
-			region:SetDesaturated(true)
-		end
-	end
-
-	--Chat Config
-	local StripAllTextures = {
-		"ChatConfigFrame",
-		"ChatConfigBackgroundFrame",
-		"ChatConfigCategoryFrame",
-		"ChatConfigChatSettingsClassColorLegend",
-		"ChatConfigChatSettingsLeft",
-		"ChatConfigChannelSettingsLeft",
-		"ChatConfigChannelSettingsClassColorLegend",
-		"ChatConfigOtherSettingsCombat",
-		"ChatConfigOtherSettingsPVP",
-		"ChatConfigOtherSettingsSystem",
-		"ChatConfigOtherSettingsCreature",
-		"ChatConfigCombatSettingsFilters",
-		"CombatConfigMessageSourcesDoneBy",
-		"CombatConfigMessageSourcesDoneTo",
-		"CombatConfigColorsUnitColors",
-		"CombatConfigColorsHighlighting",
-		"CombatConfigColorsColorizeUnitName",
-		"CombatConfigColorsColorizeSpellNames",
-		"CombatConfigColorsColorizeDamageNumber",
-		"CombatConfigColorsColorizeDamageSchool",
-		"CombatConfigColorsColorizeEntireLine",
-	}
-
-	for _, object in pairs(StripAllTextures) do
-		_G[object]:StripTextures()
-	end
-
-	ChatConfigFrame:SetTemplate("Transparent")
-	ChatConfigBackgroundFrame:SetTemplate("Transparent")
-	ChatConfigCategoryFrame:SetTemplate("Transparent")
-	ChatConfigCombatSettingsFilters:SetTemplate("Transparent")
-	ChatConfigChannelSettingsClassColorLegend:SetTemplate("Transparent")
-	ChatConfigChatSettingsClassColorLegend:SetTemplate("Transparent")
-
-	local chatbuttons = {
-		"ChatConfigFrameDefaultButton",
-		"ChatConfigFrameOkayButton",
-		"CombatLogDefaultButton",
-		"ChatConfigCombatSettingsFiltersCopyFilterButton",
-		"ChatConfigCombatSettingsFiltersAddFilterButton",
-		"ChatConfigCombatSettingsFiltersDeleteButton",
-		"CombatConfigSettingsSaveButton",
-		"ChatConfigFrameCancelButton",
-	}
-
-	for i = 1, #chatbuttons do
-		S:HandleButton(_G[chatbuttons[i]], true)
-	end
-
-	ChatConfigFrameOkayButton:Point("RIGHT", ChatConfigFrameCancelButton, "RIGHT", -11, -1)
-	ChatConfigCombatSettingsFiltersDeleteButton:Point("TOPRIGHT", ChatConfigCombatSettingsFilters, "BOTTOMRIGHT", 0, -1)
-	ChatConfigCombatSettingsFiltersAddFilterButton:Point("RIGHT", ChatConfigCombatSettingsFiltersDeleteButton, "LEFT", -1, 0)
-	ChatConfigCombatSettingsFiltersCopyFilterButton:Point("RIGHT", ChatConfigCombatSettingsFiltersAddFilterButton, "LEFT", -1, 0)
-
-	for i=1, 5 do
-		local tab = _G["CombatConfigTab"..i]
-		tab:StripTextures()
-	end
-
-	S:HandleEditBox(CombatConfigSettingsNameEditBox)
-
-	--This isn't worth the effort
-	--[[local function SkinChannelFrame(frame)
-		frame:StripTextures()
-		frame:SetTemplate("Default")
-		if _G[frame:GetName().."Check"] then
-			S:HandleCheckBox(_G[frame:GetName().."Check"])
-		end
-
-		if _G[frame:GetName().."ColorClasses"] then
-			S:HandleCheckBox(_G[frame:GetName().."ColorClasses"])
-		end
-	end
-
-	local x = CreateFrame("Frame")
-	x:RegisterEvent("PLAYER_ENTERING_WORLD")
-	x:SetScript("OnEvent", function(self, event)
-		for i=1, #CHAT_CONFIG_CHAT_LEFT do
-			local frame = _G["ChatConfigChatSettingsLeftCheckBox"..i]
-			SkinChannelFrame(frame)
-
-			if i > 1 then
-				local point, anchor, point2, x, y = frame:GetPoint()
-				frame:SetPoint(point, anchor, point2, x, y-2)
-			end
-		end
-
-		self:UnregisterEvent("PLAYER_ENTERING_WORLD")
-	end)]]
-
-	--DROPDOWN MENU
-	hooksecurefunc("UIDropDownMenu_InitializeHelper", function(frame)
-		for i = 1, UIDROPDOWNMENU_MAXLEVELS do
-			_G["DropDownList"..i.."Backdrop"]:SetTemplate("Default", true)
-			_G["DropDownList"..i.."MenuBackdrop"]:SetTemplate("Default", true)
-		end
-	end)
-
-	GuildInviteFrame:StripTextures()
-	GuildInviteFrame:SetTemplate('Transparent')
-	GuildInviteFrame:CreateShadow()
-	GuildInviteFrameLevel:Kill()
-	S:HandleButton(GuildInviteFrameJoinButton)
-	S:HandleButton(GuildInviteFrameDeclineButton)
-	GuildInviteFrame:Height(225)
-	GuildInviteFrame.SetHeight = E.noop
-
-	local function SkinWatchFrameItems()
-		for i=1, WATCHFRAME_NUM_ITEMS do
-			local button = _G["WatchFrameItem"..i]
-			if not button.skinned then
-				button:CreateBackdrop('Default')
-				button.backdrop:SetAllPoints()
-				button:StyleButton()
-				_G["WatchFrameItem"..i.."NormalTexture"]:SetAlpha(0)
-				_G["WatchFrameItem"..i.."IconTexture"]:ClearAllPoints()
-				_G["WatchFrameItem"..i.."IconTexture"]:SetPoint("TOPLEFT", 2, -2)
-				_G["WatchFrameItem"..i.."IconTexture"]:SetPoint("BOTTOMRIGHT", -2, 2)
-				_G["WatchFrameItem"..i.."IconTexture"]:SetTexCoord(unpack(E.TexCoords))
-				button.skinned = true
-			end
-		end
-	end
-
-	WatchFrame:HookScript("OnEvent", SkinWatchFrameItems)
-end
-
-S:RegisterSkin('ElvUI', LoadSkin)
\ No newline at end of file
diff --git a/ElvUI_SLE/modules/skins/blizzard/petbattle.lua b/ElvUI_SLE/modules/skins/blizzard/petbattle.lua
deleted file mode 100644
index 6376999..0000000
--- a/ElvUI_SLE/modules/skins/blizzard/petbattle.lua
+++ /dev/null
@@ -1,368 +0,0 @@
-local E, L, V, P, G, _ = unpack(ElvUI); --Inport: Engine, Locales, PrivateDB, ProfileDB, GlobalDB, Localize Underscore
-local S = E:GetModule('Skins')
-
-local function LoadSkin()
-	if E.private.skins.blizzard.enable ~= true or E.private.skins.blizzard.petbattleui ~= true then return end
-	local f = PetBattleFrame
-	local bf = f.BottomFrame
-	local infoBars = {
-		f.ActiveAlly,
-		f.ActiveEnemy
-	}
-
-	-- TOP FRAMES
-	f:StripTextures()
-
-	for index, infoBar in pairs(infoBars) do
-		infoBar.Border:SetAlpha(0)
-		infoBar.Border2:SetAlpha(0)
-		infoBar.healthBarWidth = 300
-
-		infoBar.IconBackdrop = CreateFrame("Frame", nil, infoBar)
-		infoBar.IconBackdrop:SetFrameLevel(infoBar:GetFrameLevel() - 1)
-		infoBar.IconBackdrop:SetOutside(infoBar.Icon)
-		infoBar.IconBackdrop:SetTemplate()
-		infoBar.BorderFlash:Kill()
-		infoBar.HealthBarBG:Kill()
-		infoBar.HealthBarFrame:Kill()
-		infoBar.HealthBarBackdrop = CreateFrame("Frame", nil, infoBar)
-		infoBar.HealthBarBackdrop:SetFrameLevel(infoBar:GetFrameLevel() - 1)
-		infoBar.HealthBarBackdrop:SetTemplate("Transparent")
-		infoBar.HealthBarBackdrop:Width(infoBar.healthBarWidth + 4)
-		infoBar.ActualHealthBar:SetTexture(E.media.normTex)
-
-		infoBar.PetTypeFrame = CreateFrame("Frame", nil, infoBar)
-		infoBar.PetTypeFrame:Size(100, 23)
-		infoBar.PetTypeFrame.text = infoBar.PetTypeFrame:CreateFontString(nil, 'OVERLAY')
-		infoBar.PetTypeFrame.text:FontTemplate()
-		infoBar.PetTypeFrame.text:SetText("")
-
-		infoBar.ActualHealthBar:ClearAllPoints()
-		infoBar.Name:ClearAllPoints()
-
-		infoBar.FirstAttack = infoBar:CreateTexture(nil, "ARTWORK")
-		infoBar.FirstAttack:Size(30)
-		infoBar.FirstAttack:SetTexture("Interface\\PetBattles\\PetBattle-StatIcons")
-		if index == 1 then
-			infoBar.HealthBarBackdrop:Point('TOPLEFT', infoBar.ActualHealthBar, 'TOPLEFT', -2, 2)
-			infoBar.HealthBarBackdrop:Point('BOTTOMLEFT', infoBar.ActualHealthBar, 'BOTTOMLEFT', -2, -2)
-			infoBar.ActualHealthBar:SetVertexColor(171/255, 214/255, 116/255)
-			f.Ally2.iconPoint = infoBar.IconBackdrop
-			f.Ally3.iconPoint = infoBar.IconBackdrop
-
-			infoBar.Icon:Point("TOP", E.UIParent, "TOP", 0, -23) --Player's pet frame
-
-			infoBar.ActualHealthBar:Point('BOTTOMLEFT', infoBar.Icon, 'BOTTOMRIGHT', 10, 0)
-			infoBar.Name:Point('BOTTOMLEFT', infoBar.ActualHealthBar, 'TOPLEFT', 0, 10)
-			infoBar.PetTypeFrame:SetPoint("BOTTOMRIGHT",infoBar.HealthBarBackdrop, "TOPRIGHT", 0, 4)
-			infoBar.PetTypeFrame.text:SetPoint("RIGHT")
-
-			infoBar.FirstAttack:SetPoint("LEFT", infoBar.HealthBarBackdrop, "RIGHT", 5, 0)
-			infoBar.FirstAttack:SetTexCoord(infoBar.SpeedIcon:GetTexCoord())
-			infoBar.FirstAttack:SetVertexColor(.1,.1,.1,1)
-
-		else
-			infoBar.HealthBarBackdrop:Point('TOPRIGHT', infoBar.ActualHealthBar, 'TOPRIGHT', 2, 2)
-			infoBar.HealthBarBackdrop:Point('BOTTOMRIGHT', infoBar.ActualHealthBar, 'BOTTOMRIGHT', 2, -2)
-			infoBar.ActualHealthBar:SetVertexColor(196/255,  30/255,  60/255)
-			f.Enemy2.iconPoint = infoBar.IconBackdrop
-			f.Enemy3.iconPoint = infoBar.IconBackdrop
-
-			infoBar.Icon:Point("TOP", E.UIParent, "TOP", 0, -23) --Enemy frame
-
-			infoBar.ActualHealthBar:Point('BOTTOMRIGHT', infoBar.Icon, 'BOTTOMLEFT', -10, 0)
-			infoBar.Name:Point('BOTTOMRIGHT', infoBar.ActualHealthBar, 'TOPRIGHT', 0, 10)
-
-			infoBar.PetTypeFrame:SetPoint("BOTTOMLEFT",infoBar.HealthBarBackdrop, "TOPLEFT", 2, 4)
-			infoBar.PetTypeFrame.text:SetPoint("LEFT")
-
-			infoBar.FirstAttack:SetPoint("RIGHT", infoBar.HealthBarBackdrop, "LEFT", -5, 0)
-			infoBar.FirstAttack:SetTexCoord(.5, 0, .5, 1)
-			infoBar.FirstAttack:SetVertexColor(.1,.1,.1,1)
-		end
-
-		infoBar.HealthText:ClearAllPoints()
-		infoBar.HealthText:SetPoint('CENTER', infoBar.HealthBarBackdrop, 'CENTER')
-
-		infoBar.PetType:ClearAllPoints()
-		infoBar.PetType:SetAllPoints(infoBar.PetTypeFrame)
-		infoBar.PetType:SetFrameLevel(infoBar.PetTypeFrame:GetFrameLevel() + 2)
-		infoBar.PetType:SetAlpha(0)
-
-		infoBar.LevelUnderlay:SetAlpha(0)
-		infoBar.Level:SetFontObject(NumberFont_Outline_Huge)
-		infoBar.Level:ClearAllPoints()
-		infoBar.Level:Point('BOTTOMLEFT', infoBar.Icon, 'BOTTOMLEFT', 2, 2)
-		if infoBar.SpeedIcon then
-			infoBar.SpeedIcon:ClearAllPoints()
-			infoBar.SpeedIcon:SetPoint("CENTER") -- to set
-			infoBar.SpeedIcon:SetAlpha(0)
-			infoBar.SpeedUnderlay:SetAlpha(0)
-		end
-	end
-
-	-- PETS SPEED INDICATOR UPDATE
-	hooksecurefunc("PetBattleFrame_UpdateSpeedIndicators", function(self)
-		if not f.ActiveAlly.SpeedIcon:IsShown() and not f.ActiveEnemy.SpeedIcon:IsShown() then
-			f.ActiveAlly.FirstAttack:Hide()
-			f.ActiveEnemy.FirstAttack:Hide()
-			return
-		end
-
-		for i, infoBar in pairs(infoBars) do
-			infoBar.FirstAttack:Show()
-			if infoBar.SpeedIcon:IsShown() then
-				infoBar.FirstAttack:SetVertexColor(0,1,0,1)
-			else
-				infoBar.FirstAttack:SetVertexColor(.8,0,.3,1)
-			end
-		end
-	end)
-
-
-	-- PETS UNITFRAMES PET TYPE UPDATE
-	hooksecurefunc("PetBattleUnitFrame_UpdatePetType", function(self)
-		if self.PetType then
-			local petType = C_PetBattles.GetPetType(self.petOwner, self.petIndex)
-			if self.PetTypeFrame then
-				self.PetTypeFrame.text:SetText(PET_TYPE_SUFFIX[petType])
-			end
-		end
-	end)
-
-	-- PETS UNITFRAMES AURA SKINS
-	hooksecurefunc("PetBattleAuraHolder_Update", function(self)
-		if not self.petOwner or not self.petIndex then return end
-
-		local nextFrame = 1
-		for i=1, C_PetBattles.GetNumAuras(self.petOwner, self.petIndex) do
-			local auraID, instanceID, turnsRemaining, isBuff = C_PetBattles.GetAuraInfo(self.petOwner, self.petIndex, i)
-			if (isBuff and self.displayBuffs) or (not isBuff and self.displayDebuffs) then
-				local frame = self.frames[nextFrame]
-
-				-- always hide the border
-				frame.DebuffBorder:Hide()
-
-				if not frame.isSkinned then
-					frame:CreateBackdrop()
-					frame.backdrop:SetOutside(frame.Icon)
-					frame.Icon:SetTexCoord(unpack(E.TexCoords))
-					frame.Icon:SetParent(frame.backdrop)
-				end
-
-				if isBuff then
-					frame.backdrop:SetBackdropBorderColor(0, 1, 0)
-				else
-					frame.backdrop:SetBackdropBorderColor(1, 0, 0)
-				end
-
-				-- move duration and change font
-				frame.Duration:FontTemplate(E.media.font, 12, "OUTLINE")
-				frame.Duration:ClearAllPoints()
-				frame.Duration:SetPoint("TOP", frame.Icon, "BOTTOM", 1, -4)
-				if turnsRemaining > 0 then
-					frame.Duration:SetText(turnsRemaining)
-				end
-				nextFrame = nextFrame + 1
-			end
-		end
-end)
-
-	-- WEATHER
-	hooksecurefunc("PetBattleWeatherFrame_Update", function(self)
-		local weather = C_PetBattles.GetAuraInfo(LE_BATTLE_PET_WEATHER, PET_BATTLE_PAD_INDEX, 1)
-		if weather then
-			self.Icon:Hide()
-			self.Name:Hide()
-			self.DurationShadow:Hide()
-			self.Label:Hide()
-			self.Duration:SetPoint("CENTER", self, 0, 8)
-			self:ClearAllPoints()
-			self:SetPoint("TOP", E.UIParent, 0, -15)
-		end
-	end)
-
-	hooksecurefunc("PetBattleUnitFrame_UpdateDisplay", function(self)
-		self.Icon:SetTexCoord(unpack(E.TexCoords))
-	end)
-
-	f.TopVersusText:ClearAllPoints()
-	f.TopVersusText:SetPoint("TOP", f, "TOP", 0, -56) --Versus text
-
-	-- TOOLTIPS SKINNING
-	PetBattlePrimaryAbilityTooltip.Background:SetTexture(nil)
-	PetBattlePrimaryAbilityTooltip.Delimiter1:SetTexture(nil)
-	PetBattlePrimaryAbilityTooltip.Delimiter2:SetTexture(nil)
-	PetBattlePrimaryAbilityTooltip.BorderTop:SetTexture(nil)
-	PetBattlePrimaryAbilityTooltip.BorderTopLeft:SetTexture(nil)
-	PetBattlePrimaryAbilityTooltip.BorderTopRight:SetTexture(nil)
-	PetBattlePrimaryAbilityTooltip.BorderLeft:SetTexture(nil)
-	PetBattlePrimaryAbilityTooltip.BorderRight:SetTexture(nil)
-	PetBattlePrimaryAbilityTooltip.BorderBottom:SetTexture(nil)
-	PetBattlePrimaryAbilityTooltip.BorderBottomRight:SetTexture(nil)
-	PetBattlePrimaryAbilityTooltip.BorderBottomLeft:SetTexture(nil)
-	PetBattlePrimaryAbilityTooltip:SetTemplate("Transparent")
-
-	PetBattlePrimaryUnitTooltip.Delimiter:SetTexture(nil)
-	PetBattlePrimaryUnitTooltip.Background:SetTexture(nil)
-	PetBattlePrimaryUnitTooltip.BorderTop:SetTexture(nil)
-	PetBattlePrimaryUnitTooltip.BorderTopLeft:SetTexture(nil)
-	PetBattlePrimaryUnitTooltip.BorderTopRight:SetTexture(nil)
-	PetBattlePrimaryUnitTooltip.BorderLeft:SetTexture(nil)
-	PetBattlePrimaryUnitTooltip.BorderRight:SetTexture(nil)
-	PetBattlePrimaryUnitTooltip.BorderBottom:SetTexture(nil)
-	PetBattlePrimaryUnitTooltip.BorderBottomRight:SetTexture(nil)
-	PetBattlePrimaryUnitTooltip.BorderBottomLeft:SetTexture(nil)
-	PetBattlePrimaryUnitTooltip:SetTemplate("Transparent")
-
-	-- TOOLTIP DEFAULT POSITION
-	hooksecurefunc("PetBattleAbilityTooltip_Show", function()
-		local t = PetBattlePrimaryAbilityTooltip
-		t:ClearAllPoints()
-		t:SetPoint("TOPRIGHT", E.UIParent, "TOPRIGHT", -4, -4)
-	end)
-
-
-	local extraInfoBars = {
-		f.Ally2,
-		f.Ally3,
-		f.Enemy2,
-		f.Enemy3
-	}
-
-	for index, infoBar in pairs(extraInfoBars) do
-		infoBar.BorderAlive:SetAlpha(0)
-		infoBar.HealthBarBG:SetAlpha(0)
-		infoBar.HealthDivider:SetAlpha(0)
-		infoBar:Size(40)
-		infoBar:CreateBackdrop()
-		infoBar:ClearAllPoints()
-
-		infoBar.healthBarWidth = 40
-		infoBar.ActualHealthBar:ClearAllPoints()
-		infoBar.ActualHealthBar:SetPoint("TOPLEFT", infoBar.backdrop, 'BOTTOMLEFT', 2, -3)
-
-		infoBar.HealthBarBackdrop = CreateFrame("Frame", nil, infoBar)
-		infoBar.HealthBarBackdrop:SetFrameLevel(infoBar:GetFrameLevel() - 1)
-		infoBar.HealthBarBackdrop:SetTemplate("Default")
-		infoBar.HealthBarBackdrop:Width(infoBar.healthBarWidth + 4)
-		infoBar.HealthBarBackdrop:Point('TOPLEFT', infoBar.ActualHealthBar, 'TOPLEFT', -2, 2)
-		infoBar.HealthBarBackdrop:Point('BOTTOMLEFT', infoBar.ActualHealthBar, 'BOTTOMLEFT', -2, -1)
-	end
-
-	f.Ally2:SetPoint("TOPRIGHT", f.Ally2.iconPoint, "TOPLEFT", -6, -2)
-	f.Ally3:SetPoint('TOPRIGHT', f.Ally2, 'TOPLEFT', -8, 0)
-	f.Enemy2:SetPoint("TOPLEFT", f.Enemy2.iconPoint, "TOPRIGHT", 6, -2)
-	f.Enemy3:SetPoint('TOPLEFT', f.Enemy2, 'TOPRIGHT', 8, 0)
-
-	---------------------------------
-	-- PET BATTLE ACTION BAR SETUP --
-	---------------------------------
-
-	local bar = CreateFrame("Frame", "ElvUIPetBattleActionBar", f)
-	bar:SetSize (52*6 + 7*10, 52 * 1 + 10*2)
-	bar:EnableMouse(true)
-	bar:SetTemplate()
-	bar:SetPoint("BOTTOM", ElvUIPetBattleActionBar, "BOTTOM", 0, 0)
-	bar:SetFrameLevel(0)
-	bar:SetFrameStrata('BACKGROUND')
-	bar.backdropTexture:SetDrawLayer('BACKGROUND', 0)
-	ElvUIPetBattleActionBar:SetPoint("BOTTOM", E.UIParent, "BOTTOM", 0, 4) --Defaultg position
-	E:CreateMover(ElvUIPetBattleActionBar, "PetBattleABMover", L["Pet Battle AB"], nil, nil, nil, "ALL,S&L") --Mover
-
-	bf:StripTextures()
-	bf.TurnTimer:StripTextures()
-	bf.TurnTimer.SkipButton:SetParent(bar)
-	S:HandleButton(bf.TurnTimer.SkipButton)
-
-	bf.TurnTimer.SkipButton:Width(bar:GetWidth())
-	bf.TurnTimer.SkipButton:ClearAllPoints()
-	bf.TurnTimer.SkipButton:SetPoint("BOTTOM", bar, "TOP", 0, 1)
-	bf.TurnTimer.SkipButton.ClearAllPoints = E.noop
-	bf.TurnTimer.SkipButton.SetPoint = E.noop
-
-	bf.TurnTimer:Size(bf.TurnTimer.SkipButton:GetWidth(), bf.TurnTimer.SkipButton:GetHeight())
-	bf.TurnTimer:ClearAllPoints()
-	bf.TurnTimer:SetPoint("TOP", E.UIParent, "TOP", 0, -140)
-	bf.TurnTimer.TimerText:SetPoint("CENTER")
-
-	bf.FlowFrame:StripTextures()
-	bf.MicroButtonFrame:Kill()
-	bf.Delimiter:StripTextures()
-	bf.xpBar:SetParent(bar)
-	bf.xpBar:Width(bar:GetWidth() - 4)
-	bf.xpBar:CreateBackdrop()
-	bf.xpBar:ClearAllPoints()
-	bf.xpBar:SetPoint("BOTTOM", bf.TurnTimer.SkipButton, "TOP", 0, 3)
-	bf.xpBar:SetScript("OnShow", function(self) self:StripTextures() self:SetStatusBarTexture(E.media.normTex) end)
-
-	-- PETS SELECTION SKIN
-	for i = 1, 3 do
-		local pet = bf.PetSelectionFrame["Pet"..i]
-
-		pet.HealthBarBG:SetAlpha(0)
-		pet.HealthDivider:SetAlpha(0)
-		pet.ActualHealthBar:SetAlpha(0)
-		pet.SelectedTexture:SetAlpha(0)
-		pet.MouseoverHighlight:SetAlpha(0)
-		pet.Framing:SetAlpha(0)
-		pet.Icon:SetAlpha(0)
-		pet.Name:SetAlpha(0)
-		pet.DeadOverlay:SetAlpha(0)
-		pet.Level:SetAlpha(0)
-		pet.HealthText:SetAlpha(0)
-	end
-
-	-- MOVE DEFAULT POSITION OF PETS SELECTION
-	hooksecurefunc("PetBattlePetSelectionFrame_Show", function()
-		bf.PetSelectionFrame:ClearAllPoints()
-		bf.PetSelectionFrame:SetPoint("BOTTOM", bf.xpBar, "TOP", 0, 8)
-	end)
-
-
-	local function SkinPetButton(self)
-		if not self.backdrop then
-			self:CreateBackdrop()
-		end
-		self:SetNormalTexture("")
-		self.Icon:SetTexCoord(unpack(E.TexCoords))
-		self.Icon:SetParent(self.backdrop)
-		self.Icon:SetDrawLayer('BORDER')
-		self.checked = true -- avoid create a check
-		self:StyleButton()
-		self.SelectedHighlight:SetAlpha(0)
-		self.pushed:SetInside(self.backdrop)
-		self.hover:SetInside(self.backdrop)
-		self:SetFrameStrata('LOW')
-		self.backdrop:SetFrameStrata('LOW')
-	end
-
-	hooksecurefunc("PetBattleFrame_UpdateActionBarLayout", function(self)
-		for i=1, NUM_BATTLE_PET_ABILITIES do
-			local b = bf.abilityButtons[i]
-			SkinPetButton(b)
-			b:SetParent(bar)
-			b:ClearAllPoints()
-			if i == 1 then
-				b:SetPoint("BOTTOMLEFT", 10, 10)
-			else
-				local previous = bf.abilityButtons[i-1]
-				b:SetPoint("LEFT", previous, "RIGHT", 10, 0)
-			end
-		end
-
-		bf.SwitchPetButton:ClearAllPoints()
-		bf.SwitchPetButton:SetPoint("LEFT", bf.abilityButtons[3], "RIGHT", 10, 0)
-		SkinPetButton(bf.SwitchPetButton)
-		bf.CatchButton:SetParent(bar)
-		bf.CatchButton:ClearAllPoints()
-		bf.CatchButton:SetPoint("LEFT", bf.SwitchPetButton, "RIGHT", 10, 0)
-		SkinPetButton(bf.CatchButton)
-		bf.ForfeitButton:SetParent(bar)
-		bf.ForfeitButton:ClearAllPoints()
-		bf.ForfeitButton:SetPoint("LEFT", bf.CatchButton, "RIGHT", 10, 0)
-		SkinPetButton(bf.ForfeitButton)
-	end)
-end
-
-S:RegisterSkin('ElvUI', LoadSkin)
\ No newline at end of file
diff --git a/ElvUI_SLE/modules/skins/blizzard/searchmounts.lua b/ElvUI_SLE/modules/skins/blizzard/searchmounts.lua
deleted file mode 100644
index ca23bca..0000000
--- a/ElvUI_SLE/modules/skins/blizzard/searchmounts.lua
+++ /dev/null
@@ -1,217 +0,0 @@
-local E, L, V, P, G, _ = unpack(ElvUI); --Inport: Engine, Locales, PrivateDB, ProfileDB, GlobalDB, Localize Underscore
-local S = E:GetModule('Skins')
-----------------------------------------------------------------------------------------
---	Mount list search function(Collie by p3lim)
-----------------------------------------------------------------------------------------
-local frame = CreateFrame("Frame")
-frame:RegisterEvent("ADDON_LOADED")
-frame:SetScript("OnEvent", function(self, event, addon)
-	if addon == "Blizzard_PetJournal" then
-		local filter = ""
-		local filterTable = {}
-		local filterFlags = {
-			["swimming"] = true,
-			["flying"] = true,
-			["ground"] = true,
-			["combined"] = true,
-		}
-
-		local Search = CreateFrame("EditBox", "MountSearch", MountJournal, "SearchBoxTemplate")
-		Search:SetSize(145, 20)
-		Search:SetPoint("TOPLEFT", MountJournal.LeftInset, 15, -9)
-		Search:SetMaxLetters(40)
-		Search:SetScript("OnTextChanged", function(self)
-			local text = self:GetText()
-			if text == SEARCH then
-				filter = ""
-			else
-				filter = text
-			end
-
-			MountJournal_UpdateMountList()
-		end)
-
-		local mounts = {}
-		local function BuildMounts()
-			for index = 1, GetNumCompanions("MOUNT") do
-				local id, name, _, _, _, flag = GetCompanionInfo("MOUNT", index)
-
-				if flag == 12 then
-					mounts[index] = "swimming"
-				elseif flag == 7 or flag == 15 then
-					mounts[index] = "flying"
-				elseif flag == 29 then
-					mounts[index] = "ground"
-				elseif flag == 31 or flag == 23 then
-					mounts[index] = "combined"
-				end
-
-				if id == 34187 then
-					mounts[index] = "swimming"
-				end
-			end
-		end
-
-		MountJournal:HookScript("OnEvent", BuildMounts)
-		BuildMounts()
-
-		function MountJournal_UpdateMountList()
-			local scroll = MountJournal.ListScrollFrame
-			local offset = HybridScrollFrame_GetOffset(scroll)
-			local total = GetNumCompanions("MOUNT")
-
-			if UnitLevel("player") < 20 or total < 1 then
-				scroll:Hide()
-				MountJournal.MountDisplay.NoMounts:Show()
-				MountJournal.selectedSpellID = 0
-				MountJournal_UpdateMountDisplay()
-				--MountJournal.MountCount:SetText(0)
-				MountJournal.MountButton:SetEnabled(false)
-				return
-			else
-				scroll:Show()
-				MountJournal.MountDisplay.NoMounts:Hide()
-				MountJournal.MountButton:SetEnabled(true)
-			end
-
-			table.wipe(filterTable)
-
-			for index = 1, total do
-				local id, name, spell, icon, active, flag = GetCompanionInfo("MOUNT", index)
-				if name:lower():find(filter) and filterFlags[mounts[index]] then
-					table.insert(filterTable, index)
-				end
-			end
-
-			local buttons = scroll.buttons
-			for j = 1, #buttons do
-				local button = buttons[j]
-				local index = j + offset
-				if index <= #filterTable then
-					local _, name, spell, icon, active = GetCompanionInfo("MOUNT", filterTable[index])
-					button.name:SetText(name)
-					button.icon:SetTexture(icon)
-					button.index = filterTable[index]
-					button.spellID = spell
-					button.active = active
-
-					if active then
-						button.DragButton.ActiveTexture:Show()
-					else
-						button.DragButton.ActiveTexture:Hide()
-					end
-
-					button:Show()
-
-					if MountJournal.selectedSpellID == spell then
-						button.selected = true
-						button.selectedTexture:Show()
-						--if E.private.skins.blizzard.mounts == true then
-						--if E.private.skins.blizzard.enable == true then
-						if E.private.skins.blizzard.mounts == true and E.private.skins.blizzard.enable == true then
-							button.name:SetTextColor(1, 1, 0)
-							button.backdrop:SetBackdropBorderColor(1, 1, 0)
-							--Need Help with border being nil
-							--button.border.backdrop:SetBackdropBorderColor(1, 1, 0)
-						end
-					else
-						button.selected = false
-						button.selectedTexture:Hide()
-						if E.private.skins.blizzard.mounts == true and E.private.skins.blizzard.enable == true then
-							button.name:SetTextColor(1, 1, 1)
-							button.backdrop:SetBackdropBorderColor(unpack(E.media.bordercolor))
-							--Need Help with border being nil
-							--button.border.backdrop:SetBackdropBorderColor(unpack(E.media.bordercolor))
-						end
-					end
-
-					button:SetEnabled(true)
-
-					button.DragButton:SetEnabled(true)
-					button.additionalText = nil
-					button.icon:SetDesaturated(false)
-					button.icon:SetAlpha(1)
-					--button.name:SetFontObject("GameFontNormal")
-
-					if button.showingTooltip then
-						MountJournalMountButton_UpdateTooltip(button)
-					end
-				else
-					button:Hide()
-				end
-			end
-
-			HybridScrollFrame_Update(scroll, #filterTable * 46, scroll:GetHeight())
-			MountJournal.MountCount.Count:SetText(total)
-		end
-
-		local scroll = MountJournal.ListScrollFrame
-		scroll.update = MountJournal_UpdateMountList
-		scroll:SetPoint("TOPLEFT", MountJournal.LeftInset, 3, -36)
-		scroll.scrollBar:SetPoint("TOPLEFT", scroll, "TOPRIGHT", 4, 20)
-
-		local function CreateDropDown()
-			local info = UIDropDownMenu_CreateInfo()
-			info.keepShownOnClick = true
-			info.isNotRadio = true
-
-			info.text = L["Ground"]
-			info.checked = filterFlags.ground
-			info.func = function(...)
-				local _, _, _, enabled = ...
-				filterFlags.ground = enabled
-				MountJournal_UpdateMountList()
-			end
-			UIDropDownMenu_AddButton(info)
-
-			info.text = L["Flying"]
-			info.checked = filterFlags.flying
-			info.func = function(...)
-				local _, _, _, enabled = ...
-				filterFlags.flying = enabled
-				MountJournal_UpdateMountList()
-			end
-			UIDropDownMenu_AddButton(info)
-
-			info.text = L["Flying & Ground"]
-			info.checked = filterFlags.combined
-			info.func = function(...)
-				local _, _, _, enabled = ...
-				filterFlags.combined = enabled
-				MountJournal_UpdateMountList()
-			end
-			UIDropDownMenu_AddButton(info)
-
-			info.text = L["Swimming"]
-			info.checked = filterFlags.swimming
-			info.func = function(...)
-				local _, _, _, enabled = ...
-				filterFlags.swimming = enabled
-				MountJournal_UpdateMountList()
-			end
-			UIDropDownMenu_AddButton(info)
-		end
-
-		local FilterDropDown = CreateFrame("Frame")
-		FilterDropDown.initialize = CreateDropDown
-		FilterDropDown.displayMode = "MENU"
-
-		local Filter = CreateFrame("Button", "MountFilter", MountJournal, "UIMenuButtonStretchTemplate")
-		Filter:SetSize(93, 22)
-		Filter:SetPoint("TOPRIGHT", MountJournal.LeftInset, -5, -9)
-		Filter:SetText(FILTER)
-		Filter.rightArrow:Show()
-		Filter:SetScript("OnClick", function()
-			PlaySound("igMainMenuOptionCheckBoxOn")
-			ToggleDropDownMenu(1, nil, FilterDropDown, MountFilter, 74, 15)
-		end)
-
-		if E.private.skins.blizzard.mounts == true and E.private.skins.blizzard.enable == true then
-			S:HandleEditBox(Search)
-			Search:SetHeight(18)
-			Filter:StripTextures(true)
-			S:HandleButton(Filter)
-			Filter:SetPoint("TOPLEFT", Search, "TOPRIGHT", 5, 2)
-		end
-	end
-end)
\ No newline at end of file
diff --git a/ElvUI_SLE/modules/skins/embedright.lua b/ElvUI_SLE/modules/skins/embedright.lua
deleted file mode 100644
index f85d64c..0000000
--- a/ElvUI_SLE/modules/skins/embedright.lua
+++ /dev/null
@@ -1,192 +0,0 @@
-local E, L, V, P, G = unpack(ElvUI); --Inport: Engine, Locales, PrivateDB, ProfileDB, GlobalDB
-local S = E:GetModule('Skins')
-
-function S:EmbedSkadaWindow(window, width, height, point, relativeFrame, relativePoint, ofsx, ofsy)
-	local barheight = E.private.skins.skada.barHeight
-	window.db.barwidth = width
-	window.db.barheight = barheight
-	window.db.background.height = height
-	window.db.spark = false
-	window.db.barslocked = true
-	window.bargroup:ClearAllPoints()
-	window.bargroup:SetPoint(point, relativeFrame, relativePoint, ofsx, ofsy)
-	window.bargroup:SetFrameStrata('MEDIUM')
-
-	Skada.displays["bar"].ApplySettings(Skada.displays["bar"], window)
-end
-
-function S:EmbedSkada()
-	local barSpacing = E:Scale(1)
-	local borderWidth = E:Scale(2)
-	local widthOffset = 4
-	local numBars = 8
-
-	for _, window in pairs(skadaWindows) do
-		window.bargroup:SetParent(RightChatPanel)
-	end
-	if E.db.general.panelBackdrop == 'SHOWBOTH' or E.db.general.panelBackdrop == 'RIGHT' then
-		if #skadaWindows == 1 then
-			self:EmbedSkadaWindow(skadaWindows[1], E.db.general.panelWidth - widthOffset, E.db.general.panelHeight - 42, "BOTTOMRIGHT", RightChatToggleButton, "TOPRIGHT", -2, 3)
-		elseif #skadaWindows == 2 then
-			self:EmbedSkadaWindow(skadaWindows[1], ((E.db.general.panelWidth - widthOffset) / 2) - (borderWidth + E.mult) + 1, E.db.general.panelHeight - 42,  "BOTTOMRIGHT", RightChatToggleButton, "TOPRIGHT", -2, 3)
-			self:EmbedSkadaWindow(skadaWindows[2], ((E.db.general.panelWidth - widthOffset) / 2) - (borderWidth + E.mult), E.db.general.panelHeight - 42,  "BOTTOMLEFT", RightChatPanel, "BOTTOMLEFT", 2, 2)
-		elseif #skadaWindows > 2 then
-			self:EmbedSkadaWindow(skadaWindows[1], ((E.db.general.panelWidth - widthOffset) / 2) - (borderWidth + E.mult) + 1, E.db.general.panelHeight - 42,  "BOTTOMRIGHT", RightChatToggleButton, "TOPRIGHT", -2, 3)
-			self:EmbedSkadaWindow(skadaWindows[2], ((E.db.general.panelWidth - widthOffset) / 2) - (borderWidth + E.mult), (E.db.general.panelHeight - 60) / 2 - 3,  "BOTTOMLEFT", RightChatPanel, "BOTTOMLEFT", 2, 2)
-			self:EmbedSkadaWindow(skadaWindows[3], skadaWindows[2].db.barwidth, (E.db.general.panelHeight - 59) / 2,  "BOTTOMLEFT", skadaWindows[2].bargroup.backdrop, "TOPLEFT", 2, 3)
-		end
-	else
-		if #skadaWindows == 1 then
-			self:EmbedSkadaWindow(skadaWindows[1], E.db.general.panelWidth - widthOffset, E.db.general.panelHeight - 19, "BOTTOMRIGHT", RightChatToggleButton, "TOPRIGHT", -2, 3)
-		elseif #skadaWindows == 2 then
-			self:EmbedSkadaWindow(skadaWindows[1], ((E.db.general.panelWidth - widthOffset) / 2) - (borderWidth + E.mult) + 1, E.db.general.panelHeight - 19,  "BOTTOMRIGHT", RightChatToggleButton, "TOPRIGHT", -2, 3)
-			self:EmbedSkadaWindow(skadaWindows[2], ((E.db.general.panelWidth - widthOffset) / 2) - (borderWidth + E.mult) + 1, E.db.general.panelHeight - 19,  "BOTTOMLEFT", RightChatPanel, "BOTTOMLEFT", 2, 2)
-		elseif #skadaWindows > 2 then
-			self:EmbedSkadaWindow(skadaWindows[1], ((E.db.general.panelWidth - widthOffset) / 2) - (borderWidth + E.mult) + 1, E.db.general.panelHeight - 19,  "BOTTOMRIGHT", RightChatToggleButton, "TOPRIGHT", -2, 3)
-			self:EmbedSkadaWindow(skadaWindows[2], ((E.db.general.panelWidth - widthOffset) / 2) - (borderWidth + E.mult), (E.db.general.panelHeight - 35) / 2 - 4,  "BOTTOMLEFT", RightChatPanel, "BOTTOMLEFT", 2, 2)
-			self:EmbedSkadaWindow(skadaWindows[3], skadaWindows[2].db.barwidth, (E.db.general.panelHeight - 35) / 2,  "BOTTOMLEFT", skadaWindows[2].bargroup.backdrop, "TOPLEFT", 2, 3)
-		end
-	end
-end
-
-function S:SetEmbedRight(addon)
-	self:RemovePrevious(addon)
-	if not IsAddOnLoaded(addon) then return; end
-	if self.lastAddon == nil then self.lastAddon = addon; end
-
-	if addon == 'Recount' then
-		Recount:LockWindows(true)
-
-		Recount_MainWindow:ClearAllPoints()
-		Recount_MainWindow:SetPoint("BOTTOMLEFT", RightChatPanel, "BOTTOMLEFT", 0, 0)
-
-		if E.db.general.panelBackdrop == 'SHOWBOTH' or E.db.general.panelBackdrop == 'RIGHT' then
-			Recount_MainWindow:SetWidth(E.db.general.panelWidth)
-			Recount_MainWindow:SetHeight(E.db.general.panelHeight - 14)
-		else
-			Recount_MainWindow:SetWidth(E.db.general.panelWidth)
-			Recount_MainWindow:SetHeight(E.db.general.panelHeight + 9)
-		end
-		Recount_MainWindow:SetParent(RightChatPanel)
-		self.lastAddon = addon
-	elseif addon == 'Omen' then
-		Omen.db.profile.Locked = true
-		Omen:UpdateGrips()
-		if not Omen.oldUpdateGrips then
-			Omen.oldUpdateGrips = Omen.UpdateGrips
-		end
-		Omen.UpdateGrips = function(...)
-			local db = Omen.db.profile
-			if S.db.embedRight == 'Omen' then
-				Omen.VGrip1:ClearAllPoints()
-				Omen.VGrip1:SetPoint("TOPLEFT", Omen.BarList, "TOPLEFT", db.VGrip1, 0)
-				Omen.VGrip1:SetPoint("BOTTOMLEFT", Omen.BarList, "BOTTOMLEFT", db.VGrip1, 0)
-				Omen.VGrip2:ClearAllPoints()
-				Omen.VGrip2:SetPoint("TOPLEFT", Omen.BarList, "TOPLEFT", db.VGrip2, 0)
-				Omen.VGrip2:SetPoint("BOTTOMLEFT", Omen.BarList, "BOTTOMLEFT", db.VGrip2, 0)
-				Omen.Grip:Hide()
-				if db.Locked then
-					Omen.VGrip1:Hide()
-					Omen.VGrip2:Hide()
-				else
-					Omen.VGrip1:Show()
-					if db.Bar.ShowTPS then
-						Omen.VGrip2:Show()
-					else
-						Omen.VGrip2:Hide()
-					end
-				end
-			else
-				Omen.oldUpdateGrips(...)
-			end
-		end
-
-		if not Omen.oldSetAnchors then
-			Omen.oldSetAnchors = Omen.SetAnchors
-		end
-		Omen.SetAnchors = function(...)
-			if S.db.embedRight == 'Omen' then return; end
-			Omen.oldSetAnchors(...)
-		end
-
-		OmenAnchor:ClearAllPoints()
-		OmenAnchor:SetPoint("BOTTOMLEFT", RightChatPanel, "BOTTOMLEFT", 0, 0)
-
-		if E.db.general.panelBackdrop == 'SHOWBOTH' or E.db.general.panelBackdrop == 'RIGHT' then
-			OmenAnchor:SetWidth(E.db.general.panelWidth)
-			OmenAnchor:SetHeight(E.db.general.panelHeight - 23)
-		else
-			OmenAnchor:SetWidth(E.db.general.panelWidth)
-			OmenAnchor:SetHeight(E.db.general.panelHeight)
-		end
-
-		OmenAnchor:SetParent(RightChatPanel)
-		OmenAnchor:SetFrameStrata('LOW')
-		if not OmenAnchor.SetFrameStrataOld then
-			OmenAnchor.SetFrameStrataOld = OmenAnchor.SetFrameStrata
-		end
-		OmenAnchor.SetFrameStrata = E.noop
-
-		local StartMoving = Omen.Title:GetScript('OnMouseDown')
-		local StopMoving = Omen.Title:GetScript('OnMouseUp')
-		Omen.Title:SetScript("OnMouseDown", function()
-			if S.db.embedRight == 'Omen' then return end
-			StartMoving()
-		end)
-
-		Omen.Title:SetScript("OnMouseUp", function()
-			if S.db.embedRight == 'Omen' then return end
-			StopMoving()
-		end)
-
-		Omen.BarList:SetScript("OnMouseDown", function()
-			if S.db.embedRight == 'Omen' then return end
-			StartMoving()
-		end)
-
-		Omen.BarList:SetScript("OnMouseUp", function()
-			if S.db.embedRight == 'Omen' then return end
-			StopMoving()
-		end)
-
-		self.lastAddon = addon
-	elseif addon == 'Skada' then
-		-- Update pre-existing displays
-		table.wipe(skadaWindows)
-		for _, window in ipairs(Skada:GetWindows()) do
-			window:UpdateDisplay()
-			tinsert(skadaWindows, window)
-		end
-
-		self:RemovePrevious(addon)
-
-		function Skada:CreateWindow(name, db)
-			Skada:CreateWindow_(name, db)
-
-			table.wipe(skadaWindows)
-			for _, window in ipairs(Skada:GetWindows()) do
-				tinsert(skadaWindows, window)
-			end
-
-			if S.db.embedRight == 'Skada' then
-				S:EmbedSkada()
-			end
-		end
-
-		function Skada:DeleteWindow(name)
-			Skada:DeleteWindow_(name)
-
-			table.wipe(skadaWindows)
-			for _, window in ipairs(Skada:GetWindows()) do
-				tinsert(skadaWindows, window)
-			end
-
-			if S.db.embedRight == 'Skada' then
-				S:EmbedSkada()
-			end
-		end
-
-		self:EmbedSkada()
-		self.lastAddon = addon
-	end
-end
\ No newline at end of file
diff --git a/ElvUI_SLE/modules/skins/load_skins.xml b/ElvUI_SLE/modules/skins/load_skins.xml
deleted file mode 100644
index 7c1c55e..0000000
--- a/ElvUI_SLE/modules/skins/load_skins.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<Ui xmlns="http://www.blizzard.com/wow/ui/">
-	<Include file='addons\load_addons.xml'/>
-	<Include file='blizzard\load_blizzard.xml'/>
-	<Script file='options.lua'/>
-</Ui>
\ No newline at end of file
diff --git a/ElvUI_SLE/modules/skins/options.lua b/ElvUI_SLE/modules/skins/options.lua
deleted file mode 100644
index 2559cf7..0000000
--- a/ElvUI_SLE/modules/skins/options.lua
+++ /dev/null
@@ -1,33 +0,0 @@
-local E, L, V, P, G, _ = unpack(ElvUI); --Inport: Engine, Locales, PrivateDB, ProfileDB, GlobalDB, Localize Underscore
-
-E.Options.args.sle.args.skins = {
-	order = 7,
-	type = "group",
-	name = L["Skins"],
-	guiInline = true,
-	args = {
-		info = {
-			order = 1,
-			type = "description",
-			name = L["This options require Azilroka's skin pack to work."],
-		},
-		dbm = {
-			order = 2,
-			type = "group",
-			name = "DBM",
-			guiInline = true,
-			args = {
-				fontsize = {
-					order = 1,
-					disabled = function() return not IsAddOnLoaded('DBM-Core') end,
-					type = "range",
-					name = L['Font Size'],
-					desc = L["Sets font size on DBM bars"],
-					min = 8, max = 14, step = 1,
-					get = function(info) return E.private.sle.dbm.size end,
-					set = function(info, value) E.private.sle.dbm.size = value; E:StaticPopup_Show("PRIVATE_RL") end,
-				},
-			},
-		},
-	},
-}
\ No newline at end of file
diff --git a/ElvUI_SLE/modules/test.lua b/ElvUI_SLE/modules/test.lua
new file mode 100644
index 0000000..4ae19c8
--- /dev/null
+++ b/ElvUI_SLE/modules/test.lua
@@ -0,0 +1,12 @@
+local E, L, V, P, G, _ = unpack(ElvUI); --Inport: Engine, Locales, PrivateDB, ProfileDB, GlobalDB
+--local AL = E:NewModule('Autoloot', 'AceHook-3.0', 'AceEvent-3.0');
+
+
+--[[
+function AL:Initialize()
+	self:LootShow()
+	self:RegisterEvent('PLAYER_ENTERING_WORLD', 'LootShow')
+	self:RegisterEvent('PLAYER_LOGIN', 'LootShow')
+end]]
+
+--E:RegisterModule(AL:GetName())
\ No newline at end of file
diff --git a/ElvUI_SLE/modules/uibuttons/uibuttons.lua b/ElvUI_SLE/modules/uibuttons/uibuttons.lua
index fbef9e5..ef4b1ba 100644
--- a/ElvUI_SLE/modules/uibuttons/uibuttons.lua
+++ b/ElvUI_SLE/modules/uibuttons/uibuttons.lua
@@ -116,9 +116,6 @@ function UB:CreateButtons()
 	if IsAddOnLoaded("ACP") then
 		Abutton:SetAttribute("type1", "macro")
 		Abutton:SetAttribute("macrotext1", "/acp")
-	elseif IsAddOnLoaded("Ampere") then
-		Abutton:SetAttribute("type1", "macro")
-		Abutton:SetAttribute("macrotext1", "/ampere")
 	else
 		Abutton:SetAttribute("type1", "macro")
 		Abutton:SetAttribute("macrotext1", "/stam")
diff --git a/ElvUI_SLE/skins/addons/load_addons.xml b/ElvUI_SLE/skins/addons/load_addons.xml
new file mode 100644
index 0000000..b243a91
--- /dev/null
+++ b/ElvUI_SLE/skins/addons/load_addons.xml
@@ -0,0 +1,4 @@
+<Ui xmlns="http://www.blizzard.com/wow/ui/">
+	<Script file='notes.lua'/>
+	<Script file='oces.lua'/>
+</Ui>
\ No newline at end of file
diff --git a/ElvUI_SLE/skins/addons/notes.lua b/ElvUI_SLE/skins/addons/notes.lua
new file mode 100644
index 0000000..60a9635
--- /dev/null
+++ b/ElvUI_SLE/skins/addons/notes.lua
@@ -0,0 +1,80 @@
+local E, L, V, P, G, _ = unpack(ElvUI); --Inport: Engine, Locales, PrivateDB, ProfileDB, GlobalDB, Localize Underscore
+local S = E:GetModule('Skins')
+
+local function LoadSkin()
+
+	--if E.private.skins.notes.enable ~= true then return end
+
+	local StripAllTextures = {
+                "NotesFrame",
+                "NotesFrameScrollFrame",
+				"EditNotesFrame",
+				"ConfigNotesFrame",
+				"TextScrollFrame",
+	}
+
+
+	for _, object in pairs(StripAllTextures) do
+							_G[object]:StripTextures()
+				end
+
+	--Handling buttons, frames, etc
+	S:HandleButton(NotesFrameCreateNoteButton, true)
+	S:HandleButton(ConfigNotesFrame, true)
+	S:HandleButton(Notes_AddActQuestInfo, true)
+	S:HandleButton(NotesFrameCopyNoteButton, true)
+	S:HandleButton(NotesFrameDeleteNoteButton, true)
+	S:HandleButton(NotesFrameSendNoteButton, true)
+	S:HandleButton(NotesFrameCancelButton, true)
+	S:HandleScrollBar(NotesFrameScrollFrameScrollBar)
+	S:HandleScrollBar(TextScrollFrameScrollBar)
+	S:HandleCloseButton(NotesFrameCloseButton, true)
+	S:HandleDropDownBox(Notes_AddQuestInfoDropDown)
+	S:HandleDropDownBox(Notes_TypeDropDown)
+
+	--Setting themplates. All transparent cause I like it
+	NotesFrame:SetTemplate("Transparent")
+	NotesFrameScrollFrame:SetTemplate("Transparent")
+	TextScrollFrame:SetTemplate("Transparent")
+
+	--Setting text color for uor notes
+	TextBodyEditBox:SetTextColor(1, 1, 1)
+
+	--Setting new sizes for buttons, dropdowns, etc
+	--Clear points
+	NotesFrameScrollFrame:ClearAllPoints()
+	TextScrollFrame:ClearAllPoints()
+	NotesFrameScrollFrameScrollBar:ClearAllPoints()
+	TextScrollFrameScrollBar:ClearAllPoints()
+	NotesFrameCreateNoteButton:ClearAllPoints()
+	NotesFrameCopyNoteButton:ClearAllPoints()
+	NotesFrameDeleteNoteButton:ClearAllPoints()
+	NotesFrameSendNoteButton:ClearAllPoints()
+	ConfigNotesFrame:ClearAllPoints()
+	Notes_TypeDropDown:ClearAllPoints()
+	--Sizes
+	NotesFrameScrollFrame:SetSize(305, 336)
+	TextScrollFrame:SetSize(290, 336)
+	NotesFrameScrollFrameScrollBar:SetSize(20, 308)
+	TextScrollFrameScrollBar:SetSize(20, 304)
+	NotesFrameCreateNoteButton:SetSize(80, 21)
+	NotesFrameCopyNoteButton:SetSize(80, 21)
+	NotesFrameDeleteNoteButton:SetSize(80, 21)
+	NotesFrameSendNoteButton:SetSize(80, 21)
+	ConfigNotesFrame:SetSize(654, 40)
+	Notes_TypeDropDown:SetSize(160, 20)
+
+	--Setting new positions for buttons, dropdowns, etc
+	NotesFrameScrollFrame:Point("BOTTOMLEFT", NotesFrame, "BOTTOMLEFT", 15, 38)
+	TextScrollFrame:Point("LEFT", NotesFrameScrollFrameScrollBar, "RIGHT", 20, 0)
+	NotesFrameScrollFrameScrollBar:Point("LEFT", NotesFrameScrollFrame, "RIGHT", 0, 0)
+	TextScrollFrameScrollBar:Point("LEFT", TextScrollFrame, "RIGHT", 0, 0)
+	NotesFrameCreateNoteButton:Point("TOPLEFT", NotesFrameScrollFrame, "BOTTOMLEFT", 0, -4)
+	NotesFrameCopyNoteButton:Point("LEFT", NotesFrameCreateNoteButton, "RIGHT", 2, 0)
+	NotesFrameDeleteNoteButton:Point("LEFT", NotesFrameCopyNoteButton, "RIGHT", 2, 0)
+	NotesFrameSendNoteButton:Point("LEFT", NotesFrameDeleteNoteButton, "RIGHT", 2, 0)
+	ConfigNotesFrame:Point("BOTTOMLEFT", NotesFrameScrollFrame, "TOPLEFT", 0, 2)
+	Notes_TypeDropDown:Point("RIGHT", ConfigNotesFrame, "RIGHT", -5, -4)
+end
+
+S:RegisterSkin("Notes", LoadSkin)
\ No newline at end of file
diff --git a/ElvUI_SLE/skins/addons/oces.lua b/ElvUI_SLE/skins/addons/oces.lua
new file mode 100644
index 0000000..a5f685e
--- /dev/null
+++ b/ElvUI_SLE/skins/addons/oces.lua
@@ -0,0 +1,7 @@
+local E, L, V, P, G, _ = unpack(ElvUI); --Inport: Engine, Locales, PrivateDB, ProfileDB, GlobalDB, Localize Underscore
+local S = E:GetModule('Skins')
+
+local function LoadSkin()
+	S:HandleButton(TradeSkillCreateScrollButton, true)
+end
+S:RegisterSkin('OneClickEnchantScroll', LoadSkin)
\ No newline at end of file
diff --git a/ElvUI_SLE/skins/blizzard/extraab.lua b/ElvUI_SLE/skins/blizzard/extraab.lua
new file mode 100644
index 0000000..4a67b59
--- /dev/null
+++ b/ElvUI_SLE/skins/blizzard/extraab.lua
@@ -0,0 +1,26 @@
+local E, L, V, P, G, _ = unpack(ElvUI); --Inport: Engine, Locales, PrivateDB, ProfileDB, GlobalDB, Localize Underscore
+
+local function PositionHookUpdate()
+	-- hook the ExtraActionButton1 texture, idea by roth via WoWInterface forums
+	-- code taken from Tukui
+	local button = ExtraActionButton1
+	local icon = button.icon
+	local texture = button.style
+
+	local function disableTexture(style, texture)
+		if string.sub(texture,1,9) == "Interface" then
+			style:SetTexture("")
+		end
+	end
+	button.style:SetTexture("")
+	hooksecurefunc(texture, "SetTexture", disableTexture)
+end
+
+local frame = CreateFrame("Frame", nil, nil)
+frame:RegisterEvent("PLAYER_ENTERING_WORLD")
+frame:SetScript("OnEvent",function(self, event)
+	if event == "PLAYER_ENTERING_WORLD" then
+		PositionHookUpdate()
+		frame:UnregisterEvent("PLAYER_ENTERING_WORLD")
+	end
+end)
\ No newline at end of file
diff --git a/ElvUI_SLE/skins/blizzard/load_blizzard.xml b/ElvUI_SLE/skins/blizzard/load_blizzard.xml
new file mode 100644
index 0000000..cceaf92
--- /dev/null
+++ b/ElvUI_SLE/skins/blizzard/load_blizzard.xml
@@ -0,0 +1,5 @@
+<Ui xmlns="http://www.blizzard.com/wow/ui/">
+	<Script file='extraab.lua'/>
+	<Script file='petbattle.lua'/>
+	<Script file='searchmounts.lua'/>
+</Ui>
\ No newline at end of file
diff --git a/ElvUI_SLE/skins/blizzard/misc.lua b/ElvUI_SLE/skins/blizzard/misc.lua
new file mode 100644
index 0000000..f96bfc6
--- /dev/null
+++ b/ElvUI_SLE/skins/blizzard/misc.lua
@@ -0,0 +1,687 @@
+local E, L, V, P, G = unpack(ElvUI); --Inport: Engine, Locales, PrivateDB, ProfileDB, GlobalDB
+local S = E:GetModule('Skins')
+
+--Credit to Pat
+
+local function LoadSkin()
+	if E.private.skins.blizzard.enable ~= true or E.private.skins.blizzard.misc ~= true then return end
+	-- Blizzard frame we want to reskin
+	local skins = {
+		"StaticPopup1",
+		"StaticPopup2",
+		"StaticPopup3",
+		"GameMenuFrame",
+		"InterfaceOptionsFrame",
+		"VideoOptionsFrame",
+		"AudioOptionsFrame",
+		"BNToastFrame",
+		"TicketStatusFrameButton",
+		"DropDownList1MenuBackdrop",
+		"DropDownList2MenuBackdrop",
+		"DropDownList1Backdrop",
+		"DropDownList2Backdrop",
+		"AutoCompleteBox",
+		"ConsolidatedBuffsTooltip",
+		"ReadyCheckFrame",
+		"StackSplitFrame",
+	}
+
+
+	for i = 1, getn(skins) do
+		_G[skins[i]]:SetTemplate("Transparent")
+		if _G[skins[i]] ~= _G["GhostFrameContentsFrame"] or _G[skins[i]] ~= _G["AutoCompleteBox"] then -- frame to blacklist from create shadow function
+			_G[skins[i]]:CreateShadow("Default")
+		end
+	end
+
+
+	local ChatMenus = {
+		"ChatMenu",
+		"EmoteMenu",
+		"LanguageMenu",
+		"VoiceMacroMenu",
+	}
+	--
+	for i = 1, getn(ChatMenus) do
+		if _G[ChatMenus[i]] == _G["ChatMenu"] then
+			_G[ChatMenus[i]]:HookScript("OnShow", function(self) self:SetTemplate("Default", true) self:SetBackdropColor(unpack(E['media'].backdropfadecolor)) self:ClearAllPoints() self:Point("BOTTOMLEFT", ChatFrame1, "TOPLEFT", 0, 30) end)
+		else
+			_G[ChatMenus[i]]:HookScript("OnShow", function(self) self:SetTemplate("Default", true) self:SetBackdropColor(unpack(E['media'].backdropfadecolor)) end)
+		end
+	end
+
+	--LFD Role Picker frame
+	LFDRoleCheckPopup:StripTextures()
+	LFDRoleCheckPopup:SetTemplate("Transparent")
+	S:HandleButton(LFDRoleCheckPopupAcceptButton)
+	S:HandleButton(LFDRoleCheckPopupDeclineButton)
+	S:HandleCheckBox(LFDRoleCheckPopupRoleButtonTank:GetChildren())
+	S:HandleCheckBox(LFDRoleCheckPopupRoleButtonDPS:GetChildren())
+	S:HandleCheckBox(LFDRoleCheckPopupRoleButtonHealer:GetChildren())
+	LFDRoleCheckPopupRoleButtonTank:GetChildren():SetFrameLevel(LFDRoleCheckPopupRoleButtonTank:GetChildren():GetFrameLevel() + 1)
+	LFDRoleCheckPopupRoleButtonDPS:GetChildren():SetFrameLevel(LFDRoleCheckPopupRoleButtonDPS:GetChildren():GetFrameLevel() + 1)
+	LFDRoleCheckPopupRoleButtonHealer:GetChildren():SetFrameLevel(LFDRoleCheckPopupRoleButtonHealer:GetChildren():GetFrameLevel() + 1)
+
+	-- reskin popup buttons
+	for i = 1, 3 do
+		for j = 1, 3 do
+			S:HandleButton(_G["StaticPopup"..i.."Button"..j])
+			S:HandleEditBox(_G["StaticPopup"..i.."EditBox"])
+			S:HandleEditBox(_G["StaticPopup"..i.."MoneyInputFrameGold"])
+			S:HandleEditBox(_G["StaticPopup"..i.."MoneyInputFrameSilver"])
+			S:HandleEditBox(_G["StaticPopup"..i.."MoneyInputFrameCopper"])
+			_G["StaticPopup"..i.."EditBox"].backdrop:Point("TOPLEFT", -2, -4)
+			_G["StaticPopup"..i.."EditBox"].backdrop:Point("BOTTOMRIGHT", 2, 4)
+			_G["StaticPopup"..i.."ItemFrameNameFrame"]:Kill()
+			_G["StaticPopup"..i.."ItemFrame"]:GetNormalTexture():Kill()
+			_G["StaticPopup"..i.."ItemFrame"]:SetTemplate("Default")
+			_G["StaticPopup"..i.."ItemFrame"]:StyleButton()
+			_G["StaticPopup"..i.."ItemFrameIconTexture"]:SetTexCoord(unpack(E.TexCoords))
+			_G["StaticPopup"..i.."ItemFrameIconTexture"]:ClearAllPoints()
+			_G["StaticPopup"..i.."ItemFrameIconTexture"]:Point("TOPLEFT", 2, -2)
+			_G["StaticPopup"..i.."ItemFrameIconTexture"]:Point("BOTTOMRIGHT", -2, 2)
+		end
+	end
+
+	-- reskin all esc/menu buttons
+	local BlizzardMenuButtons = {
+		"Options",
+		"SoundOptions",
+		"UIOptions",
+		"Keybindings",
+		"Macros",
+		"Ratings",
+		"AddOns",
+		"Logout",
+		"Quit",
+		"Continue",
+		"MacOptions",
+		"Help"
+	}
+
+	for i = 1, getn(BlizzardMenuButtons) do
+		local ElvuiMenuButtons = _G["GameMenuButton"..BlizzardMenuButtons[i]]
+		if ElvuiMenuButtons then
+			S:HandleButton(ElvuiMenuButtons)
+		end
+	end
+
+	if IsAddOnLoaded("OptionHouse") then
+		S:HandleButton(GameMenuButtonOptionHouse)
+	end
+
+	-- skin return to graveyard button
+	do
+		S:HandleButton(GhostFrame)
+		GhostFrame:SetBackdropColor(0,0,0,0)
+		GhostFrame:SetBackdropBorderColor(0,0,0,0)
+		GhostFrame.SetBackdropColor = E.noop
+		GhostFrame.SetBackdropBorderColor = E.noop
+		GhostFrame:ClearAllPoints()
+		GhostFrame:SetPoint("TOP", E.UIParent, "TOP", 0, -150)
+		S:HandleButton(GhostFrameContentsFrame)
+		GhostFrameContentsFrameIcon:SetTexture(nil)
+		local x = CreateFrame("Frame", nil, GhostFrame)
+		x:SetFrameStrata("MEDIUM")
+		x:SetTemplate("Default")
+		x:Point("TOPLEFT", GhostFrameContentsFrameIcon, "TOPLEFT", -2, 2)
+		x:SetPoint("BOTTOMRIGHT", GhostFrameContentsFrameIcon, "BOTTOMRIGHT", 2, -2)
+		local tex = x:CreateTexture(nil, "OVERLAY")
+		tex:SetTexture("Interface\\Icons\\spell_holy_guardianspirit")
+		tex:SetTexCoord(0.1, 0.9, 0.1, 0.9)
+		tex:Point("TOPLEFT", x, "TOPLEFT", 2, -2)
+		tex:Point("BOTTOMRIGHT", x, "BOTTOMRIGHT", -2, 2)
+	end
+
+	-- hide header textures and move text/buttons.
+	local BlizzardHeader = {
+		"GameMenuFrame",
+		"InterfaceOptionsFrame",
+		"AudioOptionsFrame",
+		"VideoOptionsFrame",
+	}
+
+	for i = 1, getn(BlizzardHeader) do
+		local title = _G[BlizzardHeader[i].."Header"]
+		if title then
+			title:SetTexture("")
+			title:ClearAllPoints()
+			if title == _G["GameMenuFrameHeader"] then
+				title:SetPoint("TOP", GameMenuFrame, 0, 7)
+			else
+				title:SetPoint("TOP", BlizzardHeader[i], 0, 0)
+			end
+		end
+	end
+
+	--Skinning Checkboxes--
+	local optioncheckbox = {
+		-- Advanced
+		"Advanced_MaxFPSCheckBox",
+		"Advanced_MaxFPSBKCheckBox",
+		"Advanced_UseUIScale",
+		-- Audio
+		"AudioOptionsSoundPanelEnableSound",
+		"AudioOptionsSoundPanelSoundEffects",
+		"AudioOptionsSoundPanelErrorSpeech",
+		"AudioOptionsSoundPanelEmoteSounds",
+		"AudioOptionsSoundPanelPetSounds",
+		"AudioOptionsSoundPanelMusic",
+		"AudioOptionsSoundPanelLoopMusic",
+		"AudioOptionsSoundPanelAmbientSounds",
+		"AudioOptionsSoundPanelSoundInBG",
+		"AudioOptionsSoundPanelReverb",
+		"AudioOptionsSoundPanelHRTF",
+		"AudioOptionsSoundPanelEnableDSPs",
+		"AudioOptionsSoundPanelUseHardware",
+		"AudioOptionsVoicePanelEnableVoice",
+		"AudioOptionsVoicePanelEnableMicrophone",
+		"AudioOptionsVoicePanelPushToTalkSound",
+		-- Network
+		"NetworkOptionsPanelOptimizeSpeed",
+		"NetworkOptionsPanelUseIPv6",
+	}
+
+	for i = 1, getn(optioncheckbox) do
+		local ocheckbox = _G[optioncheckbox[i]]
+		if ocheckbox then
+			S:HandleCheckBox(ocheckbox)
+		end
+	end
+
+	local interfacecheckbox = {
+		-- Controls
+		"ControlsPanelStickyTargeting",
+		"ControlsPanelAutoDismount",
+		"ControlsPanelAutoClearAFK",
+		"ControlsPanelBlockTrades",
+		"ControlsPanelBlockGuildInvites",
+		"ControlsPanelLootAtMouse",
+		"ControlsPanelAutoLootCorpse",
+		"ControlsPanelInteractOnLeftClick",
+		-- Combat
+		"CombatPanelAttackOnAssist",
+		"CombatPanelStopAutoAttack",
+		"CombatPanelNameplateClassColors",
+		"CombatPanelTargetOfTarget",
+		"CombatPanelShowSpellAlerts",
+		"CombatPanelReducedLagTolerance",
+		"CombatPanelActionButtonUseKeyDown",
+		"CombatPanelEnemyCastBarsOnPortrait",
+		"CombatPanelEnemyCastBarsOnNameplates",
+		"CombatPanelAutoSelfCast",
+		-- Display
+		"DisplayPanelShowCloak",
+		"DisplayPanelShowHelm",
+		"DisplayPanelShowAggroPercentage",
+		"DisplayPanelPlayAggroSounds",
+		"DisplayPanelDetailedLootInfo",
+		"DisplayPanelShowSpellPointsAvg",
+		"DisplayPanelemphasizeMySpellEffects",
+		"DisplayPanelShowFreeBagSpace",
+		"DisplayPanelCinematicSubtitles",
+		"DisplayPanelRotateMinimap",
+		"DisplayPanelScreenEdgeFlash",
+		--Objectives
+		"ObjectivesPanelAutoQuestTracking",
+		"ObjectivesPanelAutoQuestProgress",
+		"ObjectivesPanelMapQuestDifficulty",
+		"ObjectivesPanelAdvancedWorldMap",
+		"ObjectivesPanelWatchFrameWidth",
+		-- Social
+		"SocialPanelProfanityFilter",
+		"SocialPanelSpamFilter",
+		"SocialPanelChatBubbles",
+		"SocialPanelPartyChat",
+		"SocialPanelChatHoverDelay",
+		"SocialPanelGuildMemberAlert",
+		"SocialPanelChatMouseScroll",
+		-- Action bars
+		"ActionBarsPanelLockActionBars",
+		"ActionBarsPanelSecureAbilityToggle",
+		"ActionBarsPanelAlwaysShowActionBars",
+		"ActionBarsPanelBottomLeft",
+		"ActionBarsPanelBottomRight",
+		"ActionBarsPanelRight",
+		"ActionBarsPanelRightTwo",
+		-- Names
+		"NamesPanelMyName",
+		"NamesPanelFriendlyPlayerNames",
+		"NamesPanelFriendlyPets",
+		"NamesPanelFriendlyGuardians",
+		"NamesPanelFriendlyTotems",
+		"NamesPanelUnitNameplatesFriends",
+		"NamesPanelUnitNameplatesFriendlyGuardians",
+		"NamesPanelUnitNameplatesFriendlyPets",
+		"NamesPanelUnitNameplatesFriendlyTotems",
+		"NamesPanelGuilds",
+		"NamesPanelGuildTitles",
+		"NamesPanelTitles",
+		"NamesPanelNonCombatCreature",
+		"NamesPanelEnemyPlayerNames",
+		"NamesPanelEnemyPets",
+		"NamesPanelEnemyGuardians",
+		"NamesPanelEnemyTotems",
+		"NamesPanelUnitNameplatesEnemyPets",
+		"NamesPanelUnitNameplatesEnemies",
+		"NamesPanelUnitNameplatesEnemyGuardians",
+		"NamesPanelUnitNameplatesEnemyTotems",
+		-- Combat Text
+		"CombatTextPanelTargetDamage",
+		"CombatTextPanelPeriodicDamage",
+		"CombatTextPanelPetDamage",
+		"CombatTextPanelHealing",
+		"CombatTextPanelTargetEffects",
+		"CombatTextPanelOtherTargetEffects",
+		"CombatTextPanelEnableFCT",
+		"CombatTextPanelDodgeParryMiss",
+		"CombatTextPanelDamageReduction",
+		"CombatTextPanelRepChanges",
+		"CombatTextPanelReactiveAbilities",
+		"CombatTextPanelFriendlyHealerNames",
+		"CombatTextPanelCombatState",
+		"CombatTextPanelComboPoints",
+		"CombatTextPanelLowManaHealth",
+		"CombatTextPanelEnergyGains",
+		"CombatTextPanelPeriodicEnergyGains",
+		"CombatTextPanelHonorGains",
+		"CombatTextPanelAuras",
+		-- Buffs & Debuffs
+		"BuffsPanelBuffDurations",
+		"BuffsPanelDispellableDebuffs",
+		"BuffsPanelCastableBuffs",
+		"BuffsPanelConsolidateBuffs",
+		"BuffsPanelShowAllEnemyDebuffs",
+		-- Camera
+		"CameraPanelFollowTerrain",
+		"CameraPanelHeadBob",
+		"CameraPanelWaterCollision",
+		"CameraPanelSmartPivot",
+		-- Mouse
+		"MousePanelInvertMouse",
+		"MousePanelClickToMove",
+		"MousePanelWoWMouse",
+		-- Help
+		"HelpPanelShowTutorials",
+		"HelpPanelLoadingScreenTips",
+		"HelpPanelEnhancedTooltips",
+		"HelpPanelBeginnerTooltips",
+		"HelpPanelShowLuaErrors",
+		"HelpPanelColorblindMode",
+		"HelpPanelMovePad",
+		"BattlenetPanelOnlineFriends",
+		"BattlenetPanelOfflineFriends",
+		"BattlenetPanelBroadcasts",
+		"BattlenetPanelFriendRequests",
+		"BattlenetPanelConversations",
+		"BattlenetPanelShowToastWindow",
+		-- Status Text
+		"StatusTextPanelPlayer",
+		"StatusTextPanelPet",
+		"StatusTextPanelParty",
+		"StatusTextPanelTarget",
+		"StatusTextPanelAlternateResource",
+		"StatusTextPanelPercentages",
+		"StatusTextPanelXP",
+		-- Unit Frames
+		"UnitFramePanelPartyBackground",
+		"UnitFramePanelPartyPets",
+		"UnitFramePanelArenaEnemyFrames",
+		"UnitFramePanelArenaEnemyCastBar",
+		"UnitFramePanelArenaEnemyPets",
+		"UnitFramePanelFullSizeFocusFrame",
+	}
+
+	for i = 1, getn(interfacecheckbox) do
+		local icheckbox = _G["InterfaceOptions"..interfacecheckbox[i]]
+		if icheckbox then
+			S:HandleCheckBox(icheckbox)
+		end
+	end
+
+--End Skinning Checkboxes--
+
+	--Skinning dropdownds--
+	local optiondropdown = {
+		-- Graphics
+		"Graphics_DisplayModeDropDown",
+		"Graphics_ResolutionDropDown",
+		"Graphics_RefreshDropDown",
+		"Graphics_PrimaryMonitorDropDown",
+		"Graphics_MultiSampleDropDown",
+		"Graphics_VerticalSyncDropDown",
+		"Graphics_TextureResolutionDropDown",
+		"Graphics_FilteringDropDown",
+		"Graphics_ProjectedTexturesDropDown",
+		"Graphics_ViewDistanceDropDown",
+		"Graphics_EnvironmentalDetailDropDown",
+		"Graphics_GroundClutterDropDown",
+		"Graphics_ShadowsDropDown",
+		"Graphics_LiquidDetailDropDown",
+		"Graphics_SunshaftsDropDown",
+		"Graphics_ParticleDensityDropDown",
+		-- Advanced
+		"Advanced_BufferingDropDown",
+		"Advanced_LagDropDown",
+		"Advanced_HardwareCursorDropDown",
+		"Advanced_GraphicsAPIDropDown",
+		-- Audio
+		"AudioOptionsSoundPanelHardwareDropDown",
+		"AudioOptionsSoundPanelSoundChannelsDropDown",
+		"AudioOptionsVoicePanelInputDeviceDropDown",
+		"AudioOptionsVoicePanelChatModeDropDown",
+		"AudioOptionsVoicePanelOutputDeviceDropDown",
+		-- Raid Profiles
+		"CompactUnitFrameProfilesProfileSelector",
+		"CompactUnitFrameProfilesGeneralOptionsFrameHealthTextDropdown",
+		"CompactUnitFrameProfilesGeneralOptionsFrameSortByDropdown",
+	}
+
+	for i = 1, getn(optiondropdown) do
+		local odropdown = _G[optiondropdown[i]]
+		if odropdown then
+			S:HandleDropDownBox(odropdown,165)
+			DropDownList1:SetTemplate("Transparent")
+		end
+	end
+
+	local interfacedropdown ={
+		-- Controls
+		"ControlsPanelAutoLootKeyDropDown",
+		-- Combat
+		"CombatPanelTOTDropDown",
+		"CombatPanelFocusCastKeyDropDown",
+		"CombatPanelSelfCastKeyDropDown",
+		-- Display
+		"DisplayPanelAggroWarningDisplay",
+		"DisplayPanelWorldPVPObjectiveDisplay",
+		-- Social
+		"SocialPanelChatStyle",
+		"SocialPanelWhisperMode",
+		"SocialPanelTimestamps",
+		"SocialPanelBnWhisperMode",
+		"SocialPanelConversationMode",
+		-- Action bars
+		"ActionBarsPanelPickupActionKeyDropDown",
+		-- Names
+		"NamesPanelNPCNamesDropDown",
+		"NamesPanelUnitNameplatesMotionDropDown",
+		-- Combat Text
+		"CombatTextPanelFCTDropDown",
+		-- Camera
+		"CameraPanelStyleDropDown",
+		-- Mouse
+		"MousePanelClickMoveStyleDropDown",
+		"LanguagesPanelLocaleDropDown",
+	}
+
+	for i = 1, getn(interfacedropdown) do
+		local idropdown = _G["InterfaceOptions"..interfacedropdown[i]]
+		if idropdown then
+			S:HandleDropDownBox(idropdown)
+			DropDownList1:SetTemplate("Transparent")
+		end
+	end
+	--end skinning dropdowns--
+
+	S:HandleButton(InterfaceOptionsHelpPanelResetTutorials) --Reset tutorials button
+
+	-- here we reskin all "normal" buttons
+	local BlizzardButtons = {
+		"VideoOptionsFrameOkay",
+		"VideoOptionsFrameCancel",
+		"VideoOptionsFrameDefaults",
+		"VideoOptionsFrameApply",
+		"AudioOptionsFrameOkay",
+		"AudioOptionsFrameCancel",
+		"AudioOptionsFrameDefaults",
+		"InterfaceOptionsFrameDefaults",
+		"InterfaceOptionsFrameOkay",
+		"InterfaceOptionsFrameCancel",
+		"ReadyCheckFrameYesButton",
+		"ReadyCheckFrameNoButton",
+		"StackSplitOkayButton",
+		"StackSplitCancelButton",
+		"RolePollPopupAcceptButton"
+	}
+
+	for i = 1, getn(BlizzardButtons) do
+		local ElvuiButtons = _G[BlizzardButtons[i]]
+		if ElvuiButtons then
+			S:HandleButton(ElvuiButtons)
+		end
+	end
+
+	-- if a button position is not really where we want, we move it here
+	VideoOptionsFrameCancel:ClearAllPoints()
+	VideoOptionsFrameCancel:SetPoint("RIGHT",VideoOptionsFrameApply,"LEFT",-4,0)
+	VideoOptionsFrameOkay:ClearAllPoints()
+	VideoOptionsFrameOkay:SetPoint("RIGHT",VideoOptionsFrameCancel,"LEFT",-4,0)
+	AudioOptionsFrameOkay:ClearAllPoints()
+	AudioOptionsFrameOkay:SetPoint("RIGHT",AudioOptionsFrameCancel,"LEFT",-4,0)
+	InterfaceOptionsFrameOkay:ClearAllPoints()
+	InterfaceOptionsFrameOkay:SetPoint("RIGHT",InterfaceOptionsFrameCancel,"LEFT", -4,0)
+	ReadyCheckFrameYesButton:SetParent(ReadyCheckFrame)
+	ReadyCheckFrameNoButton:SetParent(ReadyCheckFrame)
+	ReadyCheckFrameYesButton:SetPoint("RIGHT", ReadyCheckFrame, "CENTER", -1, 0)
+	ReadyCheckFrameNoButton:SetPoint("LEFT", ReadyCheckFrameYesButton, "RIGHT", 3, 0)
+	ReadyCheckFrameText:SetParent(ReadyCheckFrame)
+	ReadyCheckFrameText:ClearAllPoints()
+	ReadyCheckFrameText:SetPoint("TOP", 0, -12)
+
+	-- others
+	ReadyCheckListenerFrame:SetAlpha(0)
+	ReadyCheckFrame:HookScript("OnShow", function(self) if UnitIsUnit("player", self.initiator) then self:Hide() end end) -- bug fix, don't show it if initiator
+	StackSplitFrame:GetRegions():Hide()
+
+
+	RolePollPopup:SetTemplate("Transparent")
+	RolePollPopup:CreateShadow("Default")
+
+	InterfaceOptionsFrame:SetClampedToScreen(true)
+	InterfaceOptionsFrame:SetMovable(true)
+	InterfaceOptionsFrame:EnableMouse(true)
+	InterfaceOptionsFrame:RegisterForDrag("LeftButton", "RightButton")
+	InterfaceOptionsFrame:SetScript("OnDragStart", function(self)
+		if InCombatLockdown() then return end
+
+		if IsShiftKeyDown() then
+			self:StartMoving()
+		end
+	end)
+	InterfaceOptionsFrame:SetScript("OnDragStop", function(self)
+		self:StopMovingOrSizing()
+	end)
+
+	-- mac menu/option panel, made by affli.
+	if IsMacClient() then
+		-- Skin main frame and reposition the header
+		MacOptionsFrame:SetTemplate("Default", true)
+		MacOptionsFrameHeader:SetTexture("")
+		MacOptionsFrameHeader:ClearAllPoints()
+		MacOptionsFrameHeader:SetPoint("TOP", MacOptionsFrame, 0, 0)
+
+		--Skin internal frames
+		MacOptionsFrameMovieRecording:SetTemplate("Default", true)
+		MacOptionsITunesRemote:SetTemplate("Default", true)
+
+		--Skin buttons
+		S:HandleButton(MacOptionsFrameCancel)
+		S:HandleButton(MacOptionsFrameOkay)
+		S:HandleButton(MacOptionsButtonKeybindings)
+		S:HandleButton(MacOptionsFrameDefaults)
+		S:HandleButton(MacOptionsButtonCompress)
+
+		--Reposition and resize buttons
+		local tPoint, tRTo, tRP, tX, tY =  MacOptionsButtonCompress:GetPoint()
+		MacOptionsButtonCompress:SetWidth(136)
+		MacOptionsButtonCompress:ClearAllPoints()
+		MacOptionsButtonCompress:Point(tPoint, tRTo, tRP, 4, tY)
+
+		MacOptionsFrameCancel:SetWidth(96)
+		MacOptionsFrameCancel:SetHeight(22)
+		tPoint, tRTo, tRP, tX, tY =  MacOptionsFrameCancel:GetPoint()
+		MacOptionsFrameCancel:ClearAllPoints()
+		MacOptionsFrameCancel:Point(tPoint, tRTo, tRP, -14, tY)
+
+		MacOptionsFrameOkay:ClearAllPoints()
+		MacOptionsFrameOkay:SetWidth(96)
+		MacOptionsFrameOkay:SetHeight(22)
+		MacOptionsFrameOkay:Point("LEFT",MacOptionsFrameCancel, -99,0)
+
+		MacOptionsButtonKeybindings:ClearAllPoints()
+		MacOptionsButtonKeybindings:SetWidth(96)
+		MacOptionsButtonKeybindings:SetHeight(22)
+		MacOptionsButtonKeybindings:Point("LEFT",MacOptionsFrameOkay, -99,0)
+
+		MacOptionsFrameDefaults:SetWidth(96)
+		MacOptionsFrameDefaults:SetHeight(22)
+
+		-- why these buttons is using game menu template? oO
+		MacOptionsButtonCompressLeft:SetAlpha(0)
+		MacOptionsButtonCompressMiddle:SetAlpha(0)
+		MacOptionsButtonCompressRight:SetAlpha(0)
+		MacOptionsButtonKeybindingsLeft:SetAlpha(0)
+		MacOptionsButtonKeybindingsMiddle:SetAlpha(0)
+		MacOptionsButtonKeybindingsRight:SetAlpha(0)
+	end
+
+	OpacityFrame:StripTextures()
+	OpacityFrame:SetTemplate("Transparent")
+	for i=1, WatchFrameCollapseExpandButton:GetNumRegions() do
+		local region = select(i, WatchFrameCollapseExpandButton:GetRegions())
+		if region:GetObjectType() == 'Texture' then
+			region:SetDesaturated(true)
+		end
+	end
+
+	--Chat Config
+	local StripAllTextures = {
+		"ChatConfigFrame",
+		"ChatConfigBackgroundFrame",
+		"ChatConfigCategoryFrame",
+		"ChatConfigChatSettingsClassColorLegend",
+		"ChatConfigChatSettingsLeft",
+		"ChatConfigChannelSettingsLeft",
+		"ChatConfigChannelSettingsClassColorLegend",
+		"ChatConfigOtherSettingsCombat",
+		"ChatConfigOtherSettingsPVP",
+		"ChatConfigOtherSettingsSystem",
+		"ChatConfigOtherSettingsCreature",
+		"ChatConfigCombatSettingsFilters",
+		"CombatConfigMessageSourcesDoneBy",
+		"CombatConfigMessageSourcesDoneTo",
+		"CombatConfigColorsUnitColors",
+		"CombatConfigColorsHighlighting",
+		"CombatConfigColorsColorizeUnitName",
+		"CombatConfigColorsColorizeSpellNames",
+		"CombatConfigColorsColorizeDamageNumber",
+		"CombatConfigColorsColorizeDamageSchool",
+		"CombatConfigColorsColorizeEntireLine",
+	}
+
+	for _, object in pairs(StripAllTextures) do
+		_G[object]:StripTextures()
+	end
+
+	ChatConfigFrame:SetTemplate("Transparent")
+	ChatConfigBackgroundFrame:SetTemplate("Transparent")
+	ChatConfigCategoryFrame:SetTemplate("Transparent")
+	ChatConfigCombatSettingsFilters:SetTemplate("Transparent")
+	ChatConfigChannelSettingsClassColorLegend:SetTemplate("Transparent")
+	ChatConfigChatSettingsClassColorLegend:SetTemplate("Transparent")
+
+	local chatbuttons = {
+		"ChatConfigFrameDefaultButton",
+		"ChatConfigFrameOkayButton",
+		"CombatLogDefaultButton",
+		"ChatConfigCombatSettingsFiltersCopyFilterButton",
+		"ChatConfigCombatSettingsFiltersAddFilterButton",
+		"ChatConfigCombatSettingsFiltersDeleteButton",
+		"CombatConfigSettingsSaveButton",
+		"ChatConfigFrameCancelButton",
+	}
+
+	for i = 1, #chatbuttons do
+		S:HandleButton(_G[chatbuttons[i]], true)
+	end
+
+	ChatConfigFrameOkayButton:Point("RIGHT", ChatConfigFrameCancelButton, "RIGHT", -11, -1)
+	ChatConfigCombatSettingsFiltersDeleteButton:Point("TOPRIGHT", ChatConfigCombatSettingsFilters, "BOTTOMRIGHT", 0, -1)
+	ChatConfigCombatSettingsFiltersAddFilterButton:Point("RIGHT", ChatConfigCombatSettingsFiltersDeleteButton, "LEFT", -1, 0)
+	ChatConfigCombatSettingsFiltersCopyFilterButton:Point("RIGHT", ChatConfigCombatSettingsFiltersAddFilterButton, "LEFT", -1, 0)
+
+	for i=1, 5 do
+		local tab = _G["CombatConfigTab"..i]
+		tab:StripTextures()
+	end
+
+	S:HandleEditBox(CombatConfigSettingsNameEditBox)
+
+	--This isn't worth the effort
+	--[[local function SkinChannelFrame(frame)
+		frame:StripTextures()
+		frame:SetTemplate("Default")
+		if _G[frame:GetName().."Check"] then
+			S:HandleCheckBox(_G[frame:GetName().."Check"])
+		end
+
+		if _G[frame:GetName().."ColorClasses"] then
+			S:HandleCheckBox(_G[frame:GetName().."ColorClasses"])
+		end
+	end
+
+	local x = CreateFrame("Frame")
+	x:RegisterEvent("PLAYER_ENTERING_WORLD")
+	x:SetScript("OnEvent", function(self, event)
+		for i=1, #CHAT_CONFIG_CHAT_LEFT do
+			local frame = _G["ChatConfigChatSettingsLeftCheckBox"..i]
+			SkinChannelFrame(frame)
+
+			if i > 1 then
+				local point, anchor, point2, x, y = frame:GetPoint()
+				frame:SetPoint(point, anchor, point2, x, y-2)
+			end
+		end
+
+		self:UnregisterEvent("PLAYER_ENTERING_WORLD")
+	end)]]
+
+	--DROPDOWN MENU
+	hooksecurefunc("UIDropDownMenu_InitializeHelper", function(frame)
+		for i = 1, UIDROPDOWNMENU_MAXLEVELS do
+			_G["DropDownList"..i.."Backdrop"]:SetTemplate("Default", true)
+			_G["DropDownList"..i.."MenuBackdrop"]:SetTemplate("Default", true)
+		end
+	end)
+
+	GuildInviteFrame:StripTextures()
+	GuildInviteFrame:SetTemplate('Transparent')
+	GuildInviteFrame:CreateShadow()
+	GuildInviteFrameLevel:Kill()
+	S:HandleButton(GuildInviteFrameJoinButton)
+	S:HandleButton(GuildInviteFrameDeclineButton)
+	GuildInviteFrame:Height(225)
+	GuildInviteFrame.SetHeight = E.noop
+
+	local function SkinWatchFrameItems()
+		for i=1, WATCHFRAME_NUM_ITEMS do
+			local button = _G["WatchFrameItem"..i]
+			if not button.skinned then
+				button:CreateBackdrop('Default')
+				button.backdrop:SetAllPoints()
+				button:StyleButton()
+				_G["WatchFrameItem"..i.."NormalTexture"]:SetAlpha(0)
+				_G["WatchFrameItem"..i.."IconTexture"]:ClearAllPoints()
+				_G["WatchFrameItem"..i.."IconTexture"]:SetPoint("TOPLEFT", 2, -2)
+				_G["WatchFrameItem"..i.."IconTexture"]:SetPoint("BOTTOMRIGHT", -2, 2)
+				_G["WatchFrameItem"..i.."IconTexture"]:SetTexCoord(unpack(E.TexCoords))
+				button.skinned = true
+			end
+		end
+	end
+
+	WatchFrame:HookScript("OnEvent", SkinWatchFrameItems)
+end
+
+S:RegisterSkin('ElvUI', LoadSkin)
\ No newline at end of file
diff --git a/ElvUI_SLE/skins/blizzard/petbattle.lua b/ElvUI_SLE/skins/blizzard/petbattle.lua
new file mode 100644
index 0000000..6376999
--- /dev/null
+++ b/ElvUI_SLE/skins/blizzard/petbattle.lua
@@ -0,0 +1,368 @@
+local E, L, V, P, G, _ = unpack(ElvUI); --Inport: Engine, Locales, PrivateDB, ProfileDB, GlobalDB, Localize Underscore
+local S = E:GetModule('Skins')
+
+local function LoadSkin()
+	if E.private.skins.blizzard.enable ~= true or E.private.skins.blizzard.petbattleui ~= true then return end
+	local f = PetBattleFrame
+	local bf = f.BottomFrame
+	local infoBars = {
+		f.ActiveAlly,
+		f.ActiveEnemy
+	}
+
+	-- TOP FRAMES
+	f:StripTextures()
+
+	for index, infoBar in pairs(infoBars) do
+		infoBar.Border:SetAlpha(0)
+		infoBar.Border2:SetAlpha(0)
+		infoBar.healthBarWidth = 300
+
+		infoBar.IconBackdrop = CreateFrame("Frame", nil, infoBar)
+		infoBar.IconBackdrop:SetFrameLevel(infoBar:GetFrameLevel() - 1)
+		infoBar.IconBackdrop:SetOutside(infoBar.Icon)
+		infoBar.IconBackdrop:SetTemplate()
+		infoBar.BorderFlash:Kill()
+		infoBar.HealthBarBG:Kill()
+		infoBar.HealthBarFrame:Kill()
+		infoBar.HealthBarBackdrop = CreateFrame("Frame", nil, infoBar)
+		infoBar.HealthBarBackdrop:SetFrameLevel(infoBar:GetFrameLevel() - 1)
+		infoBar.HealthBarBackdrop:SetTemplate("Transparent")
+		infoBar.HealthBarBackdrop:Width(infoBar.healthBarWidth + 4)
+		infoBar.ActualHealthBar:SetTexture(E.media.normTex)
+
+		infoBar.PetTypeFrame = CreateFrame("Frame", nil, infoBar)
+		infoBar.PetTypeFrame:Size(100, 23)
+		infoBar.PetTypeFrame.text = infoBar.PetTypeFrame:CreateFontString(nil, 'OVERLAY')
+		infoBar.PetTypeFrame.text:FontTemplate()
+		infoBar.PetTypeFrame.text:SetText("")
+
+		infoBar.ActualHealthBar:ClearAllPoints()
+		infoBar.Name:ClearAllPoints()
+
+		infoBar.FirstAttack = infoBar:CreateTexture(nil, "ARTWORK")
+		infoBar.FirstAttack:Size(30)
+		infoBar.FirstAttack:SetTexture("Interface\\PetBattles\\PetBattle-StatIcons")
+		if index == 1 then
+			infoBar.HealthBarBackdrop:Point('TOPLEFT', infoBar.ActualHealthBar, 'TOPLEFT', -2, 2)
+			infoBar.HealthBarBackdrop:Point('BOTTOMLEFT', infoBar.ActualHealthBar, 'BOTTOMLEFT', -2, -2)
+			infoBar.ActualHealthBar:SetVertexColor(171/255, 214/255, 116/255)
+			f.Ally2.iconPoint = infoBar.IconBackdrop
+			f.Ally3.iconPoint = infoBar.IconBackdrop
+
+			infoBar.Icon:Point("TOP", E.UIParent, "TOP", 0, -23) --Player's pet frame
+
+			infoBar.ActualHealthBar:Point('BOTTOMLEFT', infoBar.Icon, 'BOTTOMRIGHT', 10, 0)
+			infoBar.Name:Point('BOTTOMLEFT', infoBar.ActualHealthBar, 'TOPLEFT', 0, 10)
+			infoBar.PetTypeFrame:SetPoint("BOTTOMRIGHT",infoBar.HealthBarBackdrop, "TOPRIGHT", 0, 4)
+			infoBar.PetTypeFrame.text:SetPoint("RIGHT")
+
+			infoBar.FirstAttack:SetPoint("LEFT", infoBar.HealthBarBackdrop, "RIGHT", 5, 0)
+			infoBar.FirstAttack:SetTexCoord(infoBar.SpeedIcon:GetTexCoord())
+			infoBar.FirstAttack:SetVertexColor(.1,.1,.1,1)
+
+		else
+			infoBar.HealthBarBackdrop:Point('TOPRIGHT', infoBar.ActualHealthBar, 'TOPRIGHT', 2, 2)
+			infoBar.HealthBarBackdrop:Point('BOTTOMRIGHT', infoBar.ActualHealthBar, 'BOTTOMRIGHT', 2, -2)
+			infoBar.ActualHealthBar:SetVertexColor(196/255,  30/255,  60/255)
+			f.Enemy2.iconPoint = infoBar.IconBackdrop
+			f.Enemy3.iconPoint = infoBar.IconBackdrop
+
+			infoBar.Icon:Point("TOP", E.UIParent, "TOP", 0, -23) --Enemy frame
+
+			infoBar.ActualHealthBar:Point('BOTTOMRIGHT', infoBar.Icon, 'BOTTOMLEFT', -10, 0)
+			infoBar.Name:Point('BOTTOMRIGHT', infoBar.ActualHealthBar, 'TOPRIGHT', 0, 10)
+
+			infoBar.PetTypeFrame:SetPoint("BOTTOMLEFT",infoBar.HealthBarBackdrop, "TOPLEFT", 2, 4)
+			infoBar.PetTypeFrame.text:SetPoint("LEFT")
+
+			infoBar.FirstAttack:SetPoint("RIGHT", infoBar.HealthBarBackdrop, "LEFT", -5, 0)
+			infoBar.FirstAttack:SetTexCoord(.5, 0, .5, 1)
+			infoBar.FirstAttack:SetVertexColor(.1,.1,.1,1)
+		end
+
+		infoBar.HealthText:ClearAllPoints()
+		infoBar.HealthText:SetPoint('CENTER', infoBar.HealthBarBackdrop, 'CENTER')
+
+		infoBar.PetType:ClearAllPoints()
+		infoBar.PetType:SetAllPoints(infoBar.PetTypeFrame)
+		infoBar.PetType:SetFrameLevel(infoBar.PetTypeFrame:GetFrameLevel() + 2)
+		infoBar.PetType:SetAlpha(0)
+
+		infoBar.LevelUnderlay:SetAlpha(0)
+		infoBar.Level:SetFontObject(NumberFont_Outline_Huge)
+		infoBar.Level:ClearAllPoints()
+		infoBar.Level:Point('BOTTOMLEFT', infoBar.Icon, 'BOTTOMLEFT', 2, 2)
+		if infoBar.SpeedIcon then
+			infoBar.SpeedIcon:ClearAllPoints()
+			infoBar.SpeedIcon:SetPoint("CENTER") -- to set
+			infoBar.SpeedIcon:SetAlpha(0)
+			infoBar.SpeedUnderlay:SetAlpha(0)
+		end
+	end
+
+	-- PETS SPEED INDICATOR UPDATE
+	hooksecurefunc("PetBattleFrame_UpdateSpeedIndicators", function(self)
+		if not f.ActiveAlly.SpeedIcon:IsShown() and not f.ActiveEnemy.SpeedIcon:IsShown() then
+			f.ActiveAlly.FirstAttack:Hide()
+			f.ActiveEnemy.FirstAttack:Hide()
+			return
+		end
+
+		for i, infoBar in pairs(infoBars) do
+			infoBar.FirstAttack:Show()
+			if infoBar.SpeedIcon:IsShown() then
+				infoBar.FirstAttack:SetVertexColor(0,1,0,1)
+			else
+				infoBar.FirstAttack:SetVertexColor(.8,0,.3,1)
+			end
+		end
+	end)
+
+
+	-- PETS UNITFRAMES PET TYPE UPDATE
+	hooksecurefunc("PetBattleUnitFrame_UpdatePetType", function(self)
+		if self.PetType then
+			local petType = C_PetBattles.GetPetType(self.petOwner, self.petIndex)
+			if self.PetTypeFrame then
+				self.PetTypeFrame.text:SetText(PET_TYPE_SUFFIX[petType])
+			end
+		end
+	end)
+
+	-- PETS UNITFRAMES AURA SKINS
+	hooksecurefunc("PetBattleAuraHolder_Update", function(self)
+		if not self.petOwner or not self.petIndex then return end
+
+		local nextFrame = 1
+		for i=1, C_PetBattles.GetNumAuras(self.petOwner, self.petIndex) do
+			local auraID, instanceID, turnsRemaining, isBuff = C_PetBattles.GetAuraInfo(self.petOwner, self.petIndex, i)
+			if (isBuff and self.displayBuffs) or (not isBuff and self.displayDebuffs) then
+				local frame = self.frames[nextFrame]
+
+				-- always hide the border
+				frame.DebuffBorder:Hide()
+
+				if not frame.isSkinned then
+					frame:CreateBackdrop()
+					frame.backdrop:SetOutside(frame.Icon)
+					frame.Icon:SetTexCoord(unpack(E.TexCoords))
+					frame.Icon:SetParent(frame.backdrop)
+				end
+
+				if isBuff then
+					frame.backdrop:SetBackdropBorderColor(0, 1, 0)
+				else
+					frame.backdrop:SetBackdropBorderColor(1, 0, 0)
+				end
+
+				-- move duration and change font
+				frame.Duration:FontTemplate(E.media.font, 12, "OUTLINE")
+				frame.Duration:ClearAllPoints()
+				frame.Duration:SetPoint("TOP", frame.Icon, "BOTTOM", 1, -4)
+				if turnsRemaining > 0 then
+					frame.Duration:SetText(turnsRemaining)
+				end
+				nextFrame = nextFrame + 1
+			end
+		end
+end)
+
+	-- WEATHER
+	hooksecurefunc("PetBattleWeatherFrame_Update", function(self)
+		local weather = C_PetBattles.GetAuraInfo(LE_BATTLE_PET_WEATHER, PET_BATTLE_PAD_INDEX, 1)
+		if weather then
+			self.Icon:Hide()
+			self.Name:Hide()
+			self.DurationShadow:Hide()
+			self.Label:Hide()
+			self.Duration:SetPoint("CENTER", self, 0, 8)
+			self:ClearAllPoints()
+			self:SetPoint("TOP", E.UIParent, 0, -15)
+		end
+	end)
+
+	hooksecurefunc("PetBattleUnitFrame_UpdateDisplay", function(self)
+		self.Icon:SetTexCoord(unpack(E.TexCoords))
+	end)
+
+	f.TopVersusText:ClearAllPoints()
+	f.TopVersusText:SetPoint("TOP", f, "TOP", 0, -56) --Versus text
+
+	-- TOOLTIPS SKINNING
+	PetBattlePrimaryAbilityTooltip.Background:SetTexture(nil)
+	PetBattlePrimaryAbilityTooltip.Delimiter1:SetTexture(nil)
+	PetBattlePrimaryAbilityTooltip.Delimiter2:SetTexture(nil)
+	PetBattlePrimaryAbilityTooltip.BorderTop:SetTexture(nil)
+	PetBattlePrimaryAbilityTooltip.BorderTopLeft:SetTexture(nil)
+	PetBattlePrimaryAbilityTooltip.BorderTopRight:SetTexture(nil)
+	PetBattlePrimaryAbilityTooltip.BorderLeft:SetTexture(nil)
+	PetBattlePrimaryAbilityTooltip.BorderRight:SetTexture(nil)
+	PetBattlePrimaryAbilityTooltip.BorderBottom:SetTexture(nil)
+	PetBattlePrimaryAbilityTooltip.BorderBottomRight:SetTexture(nil)
+	PetBattlePrimaryAbilityTooltip.BorderBottomLeft:SetTexture(nil)
+	PetBattlePrimaryAbilityTooltip:SetTemplate("Transparent")
+
+	PetBattlePrimaryUnitTooltip.Delimiter:SetTexture(nil)
+	PetBattlePrimaryUnitTooltip.Background:SetTexture(nil)
+	PetBattlePrimaryUnitTooltip.BorderTop:SetTexture(nil)
+	PetBattlePrimaryUnitTooltip.BorderTopLeft:SetTexture(nil)
+	PetBattlePrimaryUnitTooltip.BorderTopRight:SetTexture(nil)
+	PetBattlePrimaryUnitTooltip.BorderLeft:SetTexture(nil)
+	PetBattlePrimaryUnitTooltip.BorderRight:SetTexture(nil)
+	PetBattlePrimaryUnitTooltip.BorderBottom:SetTexture(nil)
+	PetBattlePrimaryUnitTooltip.BorderBottomRight:SetTexture(nil)
+	PetBattlePrimaryUnitTooltip.BorderBottomLeft:SetTexture(nil)
+	PetBattlePrimaryUnitTooltip:SetTemplate("Transparent")
+
+	-- TOOLTIP DEFAULT POSITION
+	hooksecurefunc("PetBattleAbilityTooltip_Show", function()
+		local t = PetBattlePrimaryAbilityTooltip
+		t:ClearAllPoints()
+		t:SetPoint("TOPRIGHT", E.UIParent, "TOPRIGHT", -4, -4)
+	end)
+
+
+	local extraInfoBars = {
+		f.Ally2,
+		f.Ally3,
+		f.Enemy2,
+		f.Enemy3
+	}
+
+	for index, infoBar in pairs(extraInfoBars) do
+		infoBar.BorderAlive:SetAlpha(0)
+		infoBar.HealthBarBG:SetAlpha(0)
+		infoBar.HealthDivider:SetAlpha(0)
+		infoBar:Size(40)
+		infoBar:CreateBackdrop()
+		infoBar:ClearAllPoints()
+
+		infoBar.healthBarWidth = 40
+		infoBar.ActualHealthBar:ClearAllPoints()
+		infoBar.ActualHealthBar:SetPoint("TOPLEFT", infoBar.backdrop, 'BOTTOMLEFT', 2, -3)
+
+		infoBar.HealthBarBackdrop = CreateFrame("Frame", nil, infoBar)
+		infoBar.HealthBarBackdrop:SetFrameLevel(infoBar:GetFrameLevel() - 1)
+		infoBar.HealthBarBackdrop:SetTemplate("Default")
+		infoBar.HealthBarBackdrop:Width(infoBar.healthBarWidth + 4)
+		infoBar.HealthBarBackdrop:Point('TOPLEFT', infoBar.ActualHealthBar, 'TOPLEFT', -2, 2)
+		infoBar.HealthBarBackdrop:Point('BOTTOMLEFT', infoBar.ActualHealthBar, 'BOTTOMLEFT', -2, -1)
+	end
+
+	f.Ally2:SetPoint("TOPRIGHT", f.Ally2.iconPoint, "TOPLEFT", -6, -2)
+	f.Ally3:SetPoint('TOPRIGHT', f.Ally2, 'TOPLEFT', -8, 0)
+	f.Enemy2:SetPoint("TOPLEFT", f.Enemy2.iconPoint, "TOPRIGHT", 6, -2)
+	f.Enemy3:SetPoint('TOPLEFT', f.Enemy2, 'TOPRIGHT', 8, 0)
+
+	---------------------------------
+	-- PET BATTLE ACTION BAR SETUP --
+	---------------------------------
+
+	local bar = CreateFrame("Frame", "ElvUIPetBattleActionBar", f)
+	bar:SetSize (52*6 + 7*10, 52 * 1 + 10*2)
+	bar:EnableMouse(true)
+	bar:SetTemplate()
+	bar:SetPoint("BOTTOM", ElvUIPetBattleActionBar, "BOTTOM", 0, 0)
+	bar:SetFrameLevel(0)
+	bar:SetFrameStrata('BACKGROUND')
+	bar.backdropTexture:SetDrawLayer('BACKGROUND', 0)
+	ElvUIPetBattleActionBar:SetPoint("BOTTOM", E.UIParent, "BOTTOM", 0, 4) --Defaultg position
+	E:CreateMover(ElvUIPetBattleActionBar, "PetBattleABMover", L["Pet Battle AB"], nil, nil, nil, "ALL,S&L") --Mover
+
+	bf:StripTextures()
+	bf.TurnTimer:StripTextures()
+	bf.TurnTimer.SkipButton:SetParent(bar)
+	S:HandleButton(bf.TurnTimer.SkipButton)
+
+	bf.TurnTimer.SkipButton:Width(bar:GetWidth())
+	bf.TurnTimer.SkipButton:ClearAllPoints()
+	bf.TurnTimer.SkipButton:SetPoint("BOTTOM", bar, "TOP", 0, 1)
+	bf.TurnTimer.SkipButton.ClearAllPoints = E.noop
+	bf.TurnTimer.SkipButton.SetPoint = E.noop
+
+	bf.TurnTimer:Size(bf.TurnTimer.SkipButton:GetWidth(), bf.TurnTimer.SkipButton:GetHeight())
+	bf.TurnTimer:ClearAllPoints()
+	bf.TurnTimer:SetPoint("TOP", E.UIParent, "TOP", 0, -140)
+	bf.TurnTimer.TimerText:SetPoint("CENTER")
+
+	bf.FlowFrame:StripTextures()
+	bf.MicroButtonFrame:Kill()
+	bf.Delimiter:StripTextures()
+	bf.xpBar:SetParent(bar)
+	bf.xpBar:Width(bar:GetWidth() - 4)
+	bf.xpBar:CreateBackdrop()
+	bf.xpBar:ClearAllPoints()
+	bf.xpBar:SetPoint("BOTTOM", bf.TurnTimer.SkipButton, "TOP", 0, 3)
+	bf.xpBar:SetScript("OnShow", function(self) self:StripTextures() self:SetStatusBarTexture(E.media.normTex) end)
+
+	-- PETS SELECTION SKIN
+	for i = 1, 3 do
+		local pet = bf.PetSelectionFrame["Pet"..i]
+
+		pet.HealthBarBG:SetAlpha(0)
+		pet.HealthDivider:SetAlpha(0)
+		pet.ActualHealthBar:SetAlpha(0)
+		pet.SelectedTexture:SetAlpha(0)
+		pet.MouseoverHighlight:SetAlpha(0)
+		pet.Framing:SetAlpha(0)
+		pet.Icon:SetAlpha(0)
+		pet.Name:SetAlpha(0)
+		pet.DeadOverlay:SetAlpha(0)
+		pet.Level:SetAlpha(0)
+		pet.HealthText:SetAlpha(0)
+	end
+
+	-- MOVE DEFAULT POSITION OF PETS SELECTION
+	hooksecurefunc("PetBattlePetSelectionFrame_Show", function()
+		bf.PetSelectionFrame:ClearAllPoints()
+		bf.PetSelectionFrame:SetPoint("BOTTOM", bf.xpBar, "TOP", 0, 8)
+	end)
+
+
+	local function SkinPetButton(self)
+		if not self.backdrop then
+			self:CreateBackdrop()
+		end
+		self:SetNormalTexture("")
+		self.Icon:SetTexCoord(unpack(E.TexCoords))
+		self.Icon:SetParent(self.backdrop)
+		self.Icon:SetDrawLayer('BORDER')
+		self.checked = true -- avoid create a check
+		self:StyleButton()
+		self.SelectedHighlight:SetAlpha(0)
+		self.pushed:SetInside(self.backdrop)
+		self.hover:SetInside(self.backdrop)
+		self:SetFrameStrata('LOW')
+		self.backdrop:SetFrameStrata('LOW')
+	end
+
+	hooksecurefunc("PetBattleFrame_UpdateActionBarLayout", function(self)
+		for i=1, NUM_BATTLE_PET_ABILITIES do
+			local b = bf.abilityButtons[i]
+			SkinPetButton(b)
+			b:SetParent(bar)
+			b:ClearAllPoints()
+			if i == 1 then
+				b:SetPoint("BOTTOMLEFT", 10, 10)
+			else
+				local previous = bf.abilityButtons[i-1]
+				b:SetPoint("LEFT", previous, "RIGHT", 10, 0)
+			end
+		end
+
+		bf.SwitchPetButton:ClearAllPoints()
+		bf.SwitchPetButton:SetPoint("LEFT", bf.abilityButtons[3], "RIGHT", 10, 0)
+		SkinPetButton(bf.SwitchPetButton)
+		bf.CatchButton:SetParent(bar)
+		bf.CatchButton:ClearAllPoints()
+		bf.CatchButton:SetPoint("LEFT", bf.SwitchPetButton, "RIGHT", 10, 0)
+		SkinPetButton(bf.CatchButton)
+		bf.ForfeitButton:SetParent(bar)
+		bf.ForfeitButton:ClearAllPoints()
+		bf.ForfeitButton:SetPoint("LEFT", bf.CatchButton, "RIGHT", 10, 0)
+		SkinPetButton(bf.ForfeitButton)
+	end)
+end
+
+S:RegisterSkin('ElvUI', LoadSkin)
\ No newline at end of file
diff --git a/ElvUI_SLE/skins/blizzard/searchmounts.lua b/ElvUI_SLE/skins/blizzard/searchmounts.lua
new file mode 100644
index 0000000..ca23bca
--- /dev/null
+++ b/ElvUI_SLE/skins/blizzard/searchmounts.lua
@@ -0,0 +1,217 @@
+local E, L, V, P, G, _ = unpack(ElvUI); --Inport: Engine, Locales, PrivateDB, ProfileDB, GlobalDB, Localize Underscore
+local S = E:GetModule('Skins')
+----------------------------------------------------------------------------------------
+--	Mount list search function(Collie by p3lim)
+----------------------------------------------------------------------------------------
+local frame = CreateFrame("Frame")
+frame:RegisterEvent("ADDON_LOADED")
+frame:SetScript("OnEvent", function(self, event, addon)
+	if addon == "Blizzard_PetJournal" then
+		local filter = ""
+		local filterTable = {}
+		local filterFlags = {
+			["swimming"] = true,
+			["flying"] = true,
+			["ground"] = true,
+			["combined"] = true,
+		}
+
+		local Search = CreateFrame("EditBox", "MountSearch", MountJournal, "SearchBoxTemplate")
+		Search:SetSize(145, 20)
+		Search:SetPoint("TOPLEFT", MountJournal.LeftInset, 15, -9)
+		Search:SetMaxLetters(40)
+		Search:SetScript("OnTextChanged", function(self)
+			local text = self:GetText()
+			if text == SEARCH then
+				filter = ""
+			else
+				filter = text
+			end
+
+			MountJournal_UpdateMountList()
+		end)
+
+		local mounts = {}
+		local function BuildMounts()
+			for index = 1, GetNumCompanions("MOUNT") do
+				local id, name, _, _, _, flag = GetCompanionInfo("MOUNT", index)
+
+				if flag == 12 then
+					mounts[index] = "swimming"
+				elseif flag == 7 or flag == 15 then
+					mounts[index] = "flying"
+				elseif flag == 29 then
+					mounts[index] = "ground"
+				elseif flag == 31 or flag == 23 then
+					mounts[index] = "combined"
+				end
+
+				if id == 34187 then
+					mounts[index] = "swimming"
+				end
+			end
+		end
+
+		MountJournal:HookScript("OnEvent", BuildMounts)
+		BuildMounts()
+
+		function MountJournal_UpdateMountList()
+			local scroll = MountJournal.ListScrollFrame
+			local offset = HybridScrollFrame_GetOffset(scroll)
+			local total = GetNumCompanions("MOUNT")
+
+			if UnitLevel("player") < 20 or total < 1 then
+				scroll:Hide()
+				MountJournal.MountDisplay.NoMounts:Show()
+				MountJournal.selectedSpellID = 0
+				MountJournal_UpdateMountDisplay()
+				--MountJournal.MountCount:SetText(0)
+				MountJournal.MountButton:SetEnabled(false)
+				return
+			else
+				scroll:Show()
+				MountJournal.MountDisplay.NoMounts:Hide()
+				MountJournal.MountButton:SetEnabled(true)
+			end
+
+			table.wipe(filterTable)
+
+			for index = 1, total do
+				local id, name, spell, icon, active, flag = GetCompanionInfo("MOUNT", index)
+				if name:lower():find(filter) and filterFlags[mounts[index]] then
+					table.insert(filterTable, index)
+				end
+			end
+
+			local buttons = scroll.buttons
+			for j = 1, #buttons do
+				local button = buttons[j]
+				local index = j + offset
+				if index <= #filterTable then
+					local _, name, spell, icon, active = GetCompanionInfo("MOUNT", filterTable[index])
+					button.name:SetText(name)
+					button.icon:SetTexture(icon)
+					button.index = filterTable[index]
+					button.spellID = spell
+					button.active = active
+
+					if active then
+						button.DragButton.ActiveTexture:Show()
+					else
+						button.DragButton.ActiveTexture:Hide()
+					end
+
+					button:Show()
+
+					if MountJournal.selectedSpellID == spell then
+						button.selected = true
+						button.selectedTexture:Show()
+						--if E.private.skins.blizzard.mounts == true then
+						--if E.private.skins.blizzard.enable == true then
+						if E.private.skins.blizzard.mounts == true and E.private.skins.blizzard.enable == true then
+							button.name:SetTextColor(1, 1, 0)
+							button.backdrop:SetBackdropBorderColor(1, 1, 0)
+							--Need Help with border being nil
+							--button.border.backdrop:SetBackdropBorderColor(1, 1, 0)
+						end
+					else
+						button.selected = false
+						button.selectedTexture:Hide()
+						if E.private.skins.blizzard.mounts == true and E.private.skins.blizzard.enable == true then
+							button.name:SetTextColor(1, 1, 1)
+							button.backdrop:SetBackdropBorderColor(unpack(E.media.bordercolor))
+							--Need Help with border being nil
+							--button.border.backdrop:SetBackdropBorderColor(unpack(E.media.bordercolor))
+						end
+					end
+
+					button:SetEnabled(true)
+
+					button.DragButton:SetEnabled(true)
+					button.additionalText = nil
+					button.icon:SetDesaturated(false)
+					button.icon:SetAlpha(1)
+					--button.name:SetFontObject("GameFontNormal")
+
+					if button.showingTooltip then
+						MountJournalMountButton_UpdateTooltip(button)
+					end
+				else
+					button:Hide()
+				end
+			end
+
+			HybridScrollFrame_Update(scroll, #filterTable * 46, scroll:GetHeight())
+			MountJournal.MountCount.Count:SetText(total)
+		end
+
+		local scroll = MountJournal.ListScrollFrame
+		scroll.update = MountJournal_UpdateMountList
+		scroll:SetPoint("TOPLEFT", MountJournal.LeftInset, 3, -36)
+		scroll.scrollBar:SetPoint("TOPLEFT", scroll, "TOPRIGHT", 4, 20)
+
+		local function CreateDropDown()
+			local info = UIDropDownMenu_CreateInfo()
+			info.keepShownOnClick = true
+			info.isNotRadio = true
+
+			info.text = L["Ground"]
+			info.checked = filterFlags.ground
+			info.func = function(...)
+				local _, _, _, enabled = ...
+				filterFlags.ground = enabled
+				MountJournal_UpdateMountList()
+			end
+			UIDropDownMenu_AddButton(info)
+
+			info.text = L["Flying"]
+			info.checked = filterFlags.flying
+			info.func = function(...)
+				local _, _, _, enabled = ...
+				filterFlags.flying = enabled
+				MountJournal_UpdateMountList()
+			end
+			UIDropDownMenu_AddButton(info)
+
+			info.text = L["Flying & Ground"]
+			info.checked = filterFlags.combined
+			info.func = function(...)
+				local _, _, _, enabled = ...
+				filterFlags.combined = enabled
+				MountJournal_UpdateMountList()
+			end
+			UIDropDownMenu_AddButton(info)
+
+			info.text = L["Swimming"]
+			info.checked = filterFlags.swimming
+			info.func = function(...)
+				local _, _, _, enabled = ...
+				filterFlags.swimming = enabled
+				MountJournal_UpdateMountList()
+			end
+			UIDropDownMenu_AddButton(info)
+		end
+
+		local FilterDropDown = CreateFrame("Frame")
+		FilterDropDown.initialize = CreateDropDown
+		FilterDropDown.displayMode = "MENU"
+
+		local Filter = CreateFrame("Button", "MountFilter", MountJournal, "UIMenuButtonStretchTemplate")
+		Filter:SetSize(93, 22)
+		Filter:SetPoint("TOPRIGHT", MountJournal.LeftInset, -5, -9)
+		Filter:SetText(FILTER)
+		Filter.rightArrow:Show()
+		Filter:SetScript("OnClick", function()
+			PlaySound("igMainMenuOptionCheckBoxOn")
+			ToggleDropDownMenu(1, nil, FilterDropDown, MountFilter, 74, 15)
+		end)
+
+		if E.private.skins.blizzard.mounts == true and E.private.skins.blizzard.enable == true then
+			S:HandleEditBox(Search)
+			Search:SetHeight(18)
+			Filter:StripTextures(true)
+			S:HandleButton(Filter)
+			Filter:SetPoint("TOPLEFT", Search, "TOPRIGHT", 5, 2)
+		end
+	end
+end)
\ No newline at end of file
diff --git a/ElvUI_SLE/skins/load_skins.xml b/ElvUI_SLE/skins/load_skins.xml
new file mode 100644
index 0000000..7c1c55e
--- /dev/null
+++ b/ElvUI_SLE/skins/load_skins.xml
@@ -0,0 +1,5 @@
+<Ui xmlns="http://www.blizzard.com/wow/ui/">
+	<Include file='addons\load_addons.xml'/>
+	<Include file='blizzard\load_blizzard.xml'/>
+	<Script file='options.lua'/>
+</Ui>
\ No newline at end of file
diff --git a/ElvUI_SLE/skins/options.lua b/ElvUI_SLE/skins/options.lua
new file mode 100644
index 0000000..2559cf7
--- /dev/null
+++ b/ElvUI_SLE/skins/options.lua
@@ -0,0 +1,33 @@
+local E, L, V, P, G, _ = unpack(ElvUI); --Inport: Engine, Locales, PrivateDB, ProfileDB, GlobalDB, Localize Underscore
+
+E.Options.args.sle.args.skins = {
+	order = 7,
+	type = "group",
+	name = L["Skins"],
+	guiInline = true,
+	args = {
+		info = {
+			order = 1,
+			type = "description",
+			name = L["This options require Azilroka's skin pack to work."],
+		},
+		dbm = {
+			order = 2,
+			type = "group",
+			name = "DBM",
+			guiInline = true,
+			args = {
+				fontsize = {
+					order = 1,
+					disabled = function() return not IsAddOnLoaded('DBM-Core') end,
+					type = "range",
+					name = L['Font Size'],
+					desc = L["Sets font size on DBM bars"],
+					min = 8, max = 14, step = 1,
+					get = function(info) return E.private.sle.dbm.size end,
+					set = function(info, value) E.private.sle.dbm.size = value; E:StaticPopup_Show("PRIVATE_RL") end,
+				},
+			},
+		},
+	},
+}
\ No newline at end of file
diff --git a/ElvUI_SLE/textures/chat_1.tga b/ElvUI_SLE/textures/chat_1.tga
deleted file mode 100644
index 44c2b99..0000000
Binary files a/ElvUI_SLE/textures/chat_1.tga and /dev/null differ
diff --git a/ElvUI_SLE/textures/logo_elvui_sle.tga b/ElvUI_SLE/textures/logo_elvui_sle.tga
deleted file mode 100644
index a369a31..0000000
Binary files a/ElvUI_SLE/textures/logo_elvui_sle.tga and /dev/null differ
diff --git a/ElvUI_SLE/textures/outfitter.tga b/ElvUI_SLE/textures/outfitter.tga
deleted file mode 100644
index 33d1c26..0000000
Binary files a/ElvUI_SLE/textures/outfitter.tga and /dev/null differ