-- ==========================================================================================================================================================
-- Global definitions for ClickHeal. 
-- This file is loaded right after the localization is done, as it depends on local settings
-- ==========================================================================================================================================================

local i;

-- defines for all effects
CH_EFFECT_REGROWTH = 'G';
CH_EFFECT_REJUVENATION = 'J';
CH_EFFECT_RENEW = 'R';
CH_EFFECT_POWER_WORD_SHIELD = 'S';
CH_EFFECT_WEAKENED_SOUL = 'WS';
CH_EFFECT_RECENTLY_BANDAGED = 'B';
CH_EFFECT_MAGIC = 'M';
CH_EFFECT_CURSE = 'C';
CH_EFFECT_POISON = 'P';
CH_EFFECT_DISEASE = 'D';
CH_EFFECT_CHARM = 'H';
CH_EFFECT_TRACKING = 'T';
CH_EFFECT_PHASE_SHIFT = 'PS';

-- data for all effects
-- NOTE: CH_EFFECT_MISSING_BUFF is a dummy, which combines all missing buffs, only used in AffectsAsString()
CH_EFFECT_DATA = { 
  [CH_EFFECT_REGROWTH]          = {sign=CHT_EFFECT_REGROWTH_SIGN,         effectType='BUFF',    buffName=CH_SPELL_REGROWTH,           color='BRIGHTGREEN'},
  [CH_EFFECT_REJUVENATION]      = {sign=CHT_EFFECT_REJUVENATION_SIGN,     effectType='BUFF',    buffName=CH_SPELL_REJUVENATION,       color='BRIGHTGREEN'},
  [CH_EFFECT_RENEW]             = {sign=CHT_EFFECT_RENEW_SIGN,            effectType='BUFF',    buffName=CH_SPELL_RENEW,              color='BRIGHTGREEN'},
  [CH_EFFECT_POWER_WORD_SHIELD] = {sign=CHT_EFFECT_POWER_WORD_SHIELD_SIGN,effectType='BUFF',    buffName=CH_SPELL_POWER_WORD_SHIELD,  color='BRIGHTGREEN'},
  [CH_EFFECT_WEAKENED_SOUL]     = {sign=CHT_EFFECT_WEAKENED_SOUL_SIGN,    effectType='DEBUFF',  buffName=CH_DEBUFF_WEAKENED_SOUL,     color='ORANGE'},
  [CH_EFFECT_RECENTLY_BANDAGED] = {sign=CHT_EFFECT_RECENTLY_BANDAGED_SIGN,effectType='DEBUFF',  buffName=CH_DEBUFF_RECENTLY_BANDAGED, color='ORANGE'},
  [CH_EFFECT_MAGIC]             = {sign=CHT_EFFECT_MAGIC_SIGN,            effectType='DEBUFF',  buffName=CH_DEBUFF_TYPE_MAGIC,        color='RED'},
  [CH_EFFECT_CURSE]             = {sign=CHT_EFFECT_CURSE_SIGN,            effectType='DEBUFF',  buffName=CH_DEBUFF_TYPE_CURSE,        color='RED'},
  [CH_EFFECT_POISON]            = {sign=CHT_EFFECT_POISON_SIGN,           effectType='DEBUFF',  buffName=CH_DEBUFF_TYPE_POISON,       color='RED'},
  [CH_EFFECT_DISEASE]           = {sign=CHT_EFFECT_DISEASE_SIGN,          effectType='DEBUFF',  buffName=CH_DEBUFF_TYPE_DISEASE,      color='RED'},
  [CH_EFFECT_CHARM]             = {sign=CHT_EFFECT_CHARM_SIGN,            effectType='DEBUFF',  buffName=CH_DEBUFF_TYPE_CHARM,        color='RED'},
  [CH_EFFECT_TRACKING]          = {sign=CHT_EFFECT_TRACKING_SIGN,         effectType='TRACKING',buffName=nil,                         color='YELLOW'},
  [CH_EFFECT_PHASE_SHIFT]       = {sign=CHT_EFFECT_PHASE_SHIFT,           effectType='BUFF',    buffName=CH_PETSPELL_PHASE_SHIFT,     color='ORANGE'},
};

CH_EFFECT_DATA[CH_EFFECT_MAGIC].curableBy =   {PRIEST=1,};
CH_EFFECT_DATA[CH_EFFECT_CURSE].curableBy =   {DRUID=1,MAGE=1,};
CH_EFFECT_DATA[CH_EFFECT_POISON].curableBy =  {DRUID=1,PALADIN=1,SHAMAN=1,};
CH_EFFECT_DATA[CH_EFFECT_DISEASE].curableBy = {PALADIN=1,SHAMAN=1,PRIEST=1,};

-- mapping of buff/debuff name to mapping index
CH_EFFECT_MAP = {};
for i,_ in CH_EFFECT_DATA do
  if ( CH_EFFECT_DATA[i].buffName ) then
    CH_EFFECT_MAP[CH_EFFECT_DATA[i].buffName] = i;
  end
end

-- ordered array to loop over when displaying party buffs/debuffs (in PANIC button)
CH_EFFECT_DISPLAY_PARTY = { CH_EFFECT_CURSE, CH_EFFECT_MAGIC, CH_EFFECT_POISON, CH_EFFECT_DISEASE, CH_EFFECT_CHARM };

-- ordered array to loop over when displaying single unit buffs/debuffs
CH_EFFECT_DISPLAY_UNIT  = { CH_EFFECT_CURSE, CH_EFFECT_MAGIC, CH_EFFECT_POISON, CH_EFFECT_DISEASE, CH_EFFECT_CHARM,
                            CH_EFFECT_WEAKENED_SOUL, CH_EFFECT_RECENTLY_BANDAGED,
                            CH_EFFECT_REGROWTH, CH_EFFECT_REJUVENATION, CH_EFFECT_RENEW, CH_EFFECT_POWER_WORD_SHIELD,
		            CH_EFFECT_PHASE_SHIFT };

-- abbrevations all assignable mousebuttons
CH_MOUSE_BUTTONS_LABEL_ALL = {
      ['LeftButton']               = CHT_MOUSE_LEFT_BUTTON_LABEL,
      ['MiddleButton']             = CHT_MOUSE_MIDDLE_BUTTON_LABEL,
      ['RightButton']              = CHT_MOUSE_RIGHT_BUTTON_LABEL,
      ['Button4']                  = CHT_MOUSE_BUTTON4_LABEL,
      ['Button5']                  = CHT_MOUSE_BUTTON5_LABEL,
      ['ShiftLeftButton']          = CHT_MOUSE_SHIFT_LEFT_BUTTON_LABEL,
      ['ShiftMiddleButton']        = CHT_MOUSE_SHIFT_MIDDLE_BUTTON_LABEL,
      ['ShiftRightButton']         = CHT_MOUSE_SHIFT_RIGHT_BUTTON_LABEL,
      ['ShiftButton4']             = CHT_MOUSE_SHIFT_BUTTON4_LABEL,
      ['ShiftButton5']             = CHT_MOUSE_SHIFT_BUTTON5_LABEL,
      ['CtrlLeftButton']           = CHT_MOUSE_CTRL_LEFT_BUTTON_LABEL,
      ['CtrlMiddleButton']         = CHT_MOUSE_CTRL_MIDDLE_BUTTON_LABEL,
      ['CtrlRightButton']          = CHT_MOUSE_CTRL_RIGHT_BUTTON_LABEL,
      ['CtrlButton4']              = CHT_MOUSE_CTRL_BUTTON4_LABEL,
      ['CtrlButton5']              = CHT_MOUSE_CTRL_BUTTON5_LABEL,
      ['AltLeftButton']            = CHT_MOUSE_ALT_LEFT_BUTTON_LABEL,
      ['AltMiddleButton']          = CHT_MOUSE_ALT_MIDDLE_BUTTON_LABEL,
      ['AltRightButton']           = CHT_MOUSE_ALT_RIGHT_BUTTON_LABEL,
      ['AltButton4']               = CHT_MOUSE_ALT_BUTTON4_LABEL,
      ['AltButton5']               = CHT_MOUSE_ALT_BUTTON5_LABEL,
      ['ShiftCtrlLeftButton']      = CHT_MOUSE_SHIFT_CTRL_LEFT_BUTTON_LABEL,
      ['ShiftCtrlMiddleButton']    = CHT_MOUSE_SHIFT_CTRL_MIDDLE_BUTTON_LABEL,
      ['ShiftCtrlRightButton']     = CHT_MOUSE_SHIFT_CTRL_RIGHT_BUTTON_LABEL,
      ['ShiftCtrlButton4']         = CHT_MOUSE_SHIFT_CTRL_BUTTON4_LABEL,
      ['ShiftCtrlButton5']         = CHT_MOUSE_SHIFT_CTRL_BUTTON5_LABEL,
      ['ShiftAltLeftButton']       = CHT_MOUSE_SHIFT_ALT_LEFT_BUTTON_LABEL,
      ['ShiftAltMiddleButton']     = CHT_MOUSE_SHIFT_ALT_MIDDLE_BUTTON_LABEL,
      ['ShiftAltRightButton']      = CHT_MOUSE_SHIFT_ALT_RIGHT_BUTTON_LABEL,
      ['ShiftAltButton4']          = CHT_MOUSE_SHIFT_ALT_BUTTON4_LABEL,
      ['ShiftAltButton5']          = CHT_MOUSE_SHIFT_ALT_BUTTON5_LABEL,
      ['CtrlAltLeftButton']        = CHT_MOUSE_CTRL_ALT_LEFT_BUTTON_LABEL,
      ['CtrlAltMiddleButton']      = CHT_MOUSE_CTRL_ALT_MIDDLE_BUTTON_LABEL,
      ['CtrlAltRightButton']       = CHT_MOUSE_CTRL_ALT_RIGHT_BUTTON_LABEL,
      ['CtrlAltButton4']           = CHT_MOUSE_CTRL_ALT_BUTTON4_LABEL,
      ['CtrlAltButton5']           = CHT_MOUSE_CTRL_ALT_BUTTON5_LABEL,
      ['ShiftCtrlAltLeftButton']   = CHT_MOUSE_SHIFT_CTRL_ALT_LEFT_BUTTON_LABEL,
      ['ShiftCtrlAltMiddleButton'] = CHT_MOUSE_SHIFT_CTRL_ALT_MIDDLE_BUTTON_LABEL,
      ['ShiftCtrlAltRightButton']  = CHT_MOUSE_SHIFT_CTRL_ALT_RIGHT_BUTTON_LABEL,
      ['ShiftCtrlAltButton4']      = CHT_MOUSE_SHIFT_CTRL_ALT_BUTTON4_LABEL,
      ['ShiftCtrlAltButton5']      = CHT_MOUSE_SHIFT_CTRL_ALT_BUTTON5_LABEL,
    };

-- abbrevations all assignable mousebuttons
CH_MOUSE_BUTTONS_ABBR_ALL = {
      ['LeftButton']               = CHT_MOUSE_LEFT_BUTTON_ABBR,
      ['MiddleButton']             = CHT_MOUSE_MIDDLE_BUTTON_ABBR,
      ['RightButton']              = CHT_MOUSE_RIGHT_BUTTON_ABBR,
      ['Button4']                  = CHT_MOUSE_BUTTON4_ABBR,
      ['Button5']                  = CHT_MOUSE_BUTTON5_ABBR,
      ['ShiftLeftButton']          = CHT_MOUSE_SHIFT_LEFT_BUTTON_ABBR,
      ['ShiftMiddleButton']        = CHT_MOUSE_SHIFT_MIDDLE_BUTTON_ABBR,
      ['ShiftRightButton']         = CHT_MOUSE_SHIFT_RIGHT_BUTTON_ABBR,
      ['ShiftButton4']             = CHT_MOUSE_SHIFT_BUTTON4_ABBR,
      ['ShiftButton5']             = CHT_MOUSE_SHIFT_BUTTON5_ABBR,
      ['CtrlLeftButton']           = CHT_MOUSE_CTRL_LEFT_BUTTON_ABBR,
      ['CtrlMiddleButton']         = CHT_MOUSE_CTRL_MIDDLE_BUTTON_ABBR,
      ['CtrlRightButton']          = CHT_MOUSE_CTRL_RIGHT_BUTTON_ABBR,
      ['CtrlButton4']              = CHT_MOUSE_CTRL_BUTTON4_ABBR,
      ['CtrlButton5']              = CHT_MOUSE_CTRL_BUTTON5_ABBR,
      ['AltLeftButton']            = CHT_MOUSE_ALT_LEFT_BUTTON_ABBR,
      ['AltMiddleButton']          = CHT_MOUSE_ALT_MIDDLE_BUTTON_ABBR,
      ['AltRightButton']           = CHT_MOUSE_ALT_RIGHT_BUTTON_ABBR,
      ['AltButton4']               = CHT_MOUSE_ALT_BUTTON4_ABBR,
      ['AltButton5']               = CHT_MOUSE_ALT_BUTTON5_ABBR,
      ['ShiftCtrlLeftButton']      = CHT_MOUSE_SHIFT_CTRL_LEFT_BUTTON_ABBR,
      ['ShiftCtrlMiddleButton']    = CHT_MOUSE_SHIFT_CTRL_MIDDLE_BUTTON_ABBR,
      ['ShiftCtrlRightButton']     = CHT_MOUSE_SHIFT_CTRL_RIGHT_BUTTON_ABBR,
      ['ShiftCtrlButton4']         = CHT_MOUSE_SHIFT_CTRL_BUTTON4_ABBR,
      ['ShiftCtrlButton5']         = CHT_MOUSE_SHIFT_CTRL_BUTTON5_ABBR,
      ['ShiftAltLeftButton']       = CHT_MOUSE_SHIFT_ALT_LEFT_BUTTON_ABBR,
      ['ShiftAltMiddleButton']     = CHT_MOUSE_SHIFT_ALT_MIDDLE_BUTTON_ABBR,
      ['ShiftAltRightButton']      = CHT_MOUSE_SHIFT_ALT_RIGHT_BUTTON_ABBR,
      ['ShiftAltButton4']          = CHT_MOUSE_SHIFT_ALT_BUTTON4_ABBR,
      ['ShiftAltButton5']          = CHT_MOUSE_SHIFT_ALT_BUTTON5_ABBR,
      ['CtrlAltLeftButton']        = CHT_MOUSE_CTRL_ALT_LEFT_BUTTON_ABBR,
      ['CtrlAltMiddleButton']      = CHT_MOUSE_CTRL_ALT_MIDDLE_BUTTON_ABBR,
      ['CtrlAltRightButton']       = CHT_MOUSE_CTRL_ALT_RIGHT_BUTTON_ABBR,
      ['CtrlAltButton4']           = CHT_MOUSE_CTRL_ALT_BUTTON4_ABBR,
      ['CtrlAltButton5']           = CHT_MOUSE_CTRL_ALT_BUTTON5_ABBR,
      ['ShiftCtrlAltLeftButton']   = CHT_MOUSE_SHIFT_CTRL_ALT_LEFT_BUTTON_ABBR,
      ['ShiftCtrlAltMiddleButton'] = CHT_MOUSE_SHIFT_CTRL_ALT_MIDDLE_BUTTON_ABBR,
      ['ShiftCtrlAltRightButton']  = CHT_MOUSE_SHIFT_CTRL_ALT_RIGHT_BUTTON_ABBR,
      ['ShiftCtrlAltButton4']      = CHT_MOUSE_SHIFT_CTRL_ALT_BUTTON4_ABBR,
      ['ShiftCtrlAltButton5']      = CHT_MOUSE_SHIFT_CTRL_ALT_BUTTON5_ABBR,
    };

-- mesmerization info
CH_MESMERIZE_INFO = { [CH_SPELL_SHACKLE_UNDEAD]   = {pattern  = "undefined",
                                                     texture  = "Interface/Icons/Spell_Nature_Slow",
                                                     duration = {[1]=30,[2]=40,[3]=50,MAX=50},
                                                    },
                      [CH_SPELL_POLYMORPH]        = {pattern  = "undefined",
                                                     texture  = "Interface/Icons/Spell_Nature_Polymorph",
                                                     duration = {[1]=20,[2]=30,[3]=40,[4]=50,MAX=50},
                                                    },
                      [CH_SPELL_ENTANGLING_ROOTS] = {pattern  = "undefined",
                                                     texture  = "Interface/Icons/Spell_Nature_StrangleVines",
                                                     duration = {[1]=12,[2]=15,[3]=18,[4]=21,[5]=24,[6]=27,MAX=27},
                                                    },
                      [CH_SPELL_HIBERNATE]        = {pattern  = "undefined",
                                                     texture  = "Interface/Icons/Spell_Nature_Sleep",
                                                     duration = {[1]=20,[2]=30,[3]=40,MAX=40},
                                                    },
                      [CH_SPELL_BANISH]           = {pattern  = "undefined",
                                                     texture  = "Interface/Icons/Spell_Shadow_Cripple",
                                                     duration = {[1]=20,[2]=30,MAX=30},
                                                    },
                    };

-- class info, dependant on locale
CH_CLASS_INFO['DRUID'].shapeshift   = {forms={CASTER=CH_LABEL_SHAPESHIFT_CASTER,BEAR=CH_LABEL_SHAPESHIFT_BEAR,CAT=CH_LABEL_SHAPESHIFT_CAT},
                                       default='CASTER'
                                      };
CH_CLASS_INFO['HUNTER'].shapeshift  = {forms={RANGE=CH_LABEL_SHAPESHIFT_RANGE,MELEE=CH_LABEL_SHAPESHIFT_MELEE},
                                       default='RANGE'
                                      };
CH_CLASS_INFO['ROGUE'].shapeshift   = {forms={STEALTH=CH_LABEL_SHAPESHIFT_STEALTH,MELEE=CH_LABEL_SHAPESHIFT_MELEE},
                                       default='MELEE'
                                      };
CH_CLASS_INFO['WARRIOR'].shapeshift = {forms={BAT=CH_LABEL_SHAPESHIFT_BATTLE_STANCE,DEF=CH_LABEL_SHAPESHIFT_DEFENSIVE_STANCE,BER=CH_LABEL_SHAPESHIFT_BERSERKER_STANCE},
                                       default='BAT'
                                      };

-- debug information
CH_DebugLevels = { [CH_DEBUG_NONE]    = CHT_DEBUG_NONE_LABEL,
                   [CH_DEBUG_EMERG]   = CHT_DEBUG_EMERG_LABEL,
                   [CH_DEBUG_ALERT]   = CHT_DEBUG_ALERT_LABEL,
                   [CH_DEBUG_CRIT]    = CHT_DEBUG_CRIT_LABEL,
                   [CH_DEBUG_ERR]     = CHT_DEBUG_ERR_LABEL,
                   [CH_DEBUG_WARNING] = CHT_DEBUG_WARNING_LABEL,
                   [CH_DEBUG_NOTICE]  = CHT_DEBUG_NOTICE_LABEL,
                   [CH_DEBUG_INFO]    = CHT_DEBUG_INFO_LABEL,
                   [CH_DEBUG_DEBUG]   = CHT_DEBUG_DEBUG_LABEL,
}

-- anchors
CH_ANCHOR_DATA = {
  NeedyListHeal    = {frameName='CH_NeedyListHealAnchor', menuFuncName='CHH_ExtendedNeedyListHealInit'},
  NeedyListCure    = {frameName='CH_NeedyListCureAnchor', menuFuncName='CHH_ExtendedNeedyListCureInit'},
  NeedyListBuff    = {frameName='CH_NeedyListBuffAnchor', menuFuncName='CHH_ExtendedNeedyListBuffInit'},
  NeedyListDead    = {frameName='CH_NeedyListDeadAnchor', menuFuncName='CHH_ExtendedNeedyListDeadInit'},
  MainTank         = {frameName='CH_MTAnchor',            menuFuncName='CHH_ExtendedMainTankTab'},
  RaidGroup1       = {frameName='CH_Raid1Anchor',         menuFuncName='CHH_ExtendedRaidTab'},
  RaidGroup2       = {frameName='CH_Raid2Anchor',         menuFuncName='CHH_ExtendedRaidTab'},
  RaidGroup3       = {frameName='CH_Raid3Anchor',         menuFuncName='CHH_ExtendedRaidTab'},
  RaidGroup4       = {frameName='CH_Raid4Anchor',         menuFuncName='CHH_ExtendedRaidTab'},
  RaidGroup5       = {frameName='CH_Raid5Anchor',         menuFuncName='CHH_ExtendedRaidTab'},
  RaidGroup6       = {frameName='CH_Raid6Anchor',         menuFuncName='CHH_ExtendedRaidTab'},
  RaidGroup7       = {frameName='CH_Raid7Anchor',         menuFuncName='CHH_ExtendedRaidTab'},
  RaidGroup8       = {frameName='CH_Raid8Anchor',         menuFuncName='CHH_ExtendedRaidTab'},
  RaidDruid        = {frameName='CH_RaidDRUIDAnchor',     menuFuncName='CHH_ExtendedRaidTab'},
  RaidHunter       = {frameName='CH_RaidHUNTERAnchor',    menuFuncName='CHH_ExtendedRaidTab'},
  RaidMage         = {frameName='CH_RaidMAGEAnchor',      menuFuncName='CHH_ExtendedRaidTab'},
  RaidPaladin      = {frameName='CH_RaidPALADINAnchor',   menuFuncName='CHH_ExtendedRaidTab'},
  RaidPriest       = {frameName='CH_RaidPRIESTAnchor',    menuFuncName='CHH_ExtendedRaidTab'},
  RaidRogue        = {frameName='CH_RaidROGUEAnchor',     menuFuncName='CHH_ExtendedRaidTab'},
  RaidShaman       = {frameName='CH_RaidSHAMANAnchor',    menuFuncName='CHH_ExtendedRaidTab'},
  RaidWarlock      = {frameName='CH_RaidWARLOCKAnchor',   menuFuncName='CHH_ExtendedRaidTab'},
  RaidWarrior      = {frameName='CH_RaidWARRIORAnchor',   menuFuncName='CHH_ExtendedRaidTab'},
  RaidPets         = {frameName='CH_RaidPetsAnchor',      menuFuncName='CHH_ExtendedRaidTab'},
}

CH_ANCHOR_FRAME_NAME_MAP = {};
for i,_ in CH_ANCHOR_DATA do
  CH_ANCHOR_FRAME_NAME_MAP[CH_ANCHOR_DATA[i].frameName] = i;
end

CH_DefaultAnchor = {
  NeedyListHeal    = {relativeTo='GUI', relativePoint='LEFT',    offsetX=200,  offsetY=300,  visibility='SHOW',     showMenu=true },
  NeedyListCure    = {relativeTo='GUI', relativePoint='LEFT',    offsetX=300,  offsetY=300,  visibility='SHOW',     showMenu=true },
  NeedyListBuff    = {relativeTo='GUI', relativePoint='LEFT',    offsetX=400,  offsetY=300,  visibility='SHOW',     showMenu=true },
  NeedyListDead    = {relativeTo='GUI', relativePoint='LEFT',    offsetX=500,  offsetY=300,  visibility='SHOW',     showMenu=true },
  MainTank         = {relativeTo='GUI', relativePoint='TOP',     offsetX=-100, offsetY=-30,  visibility='AUTOHIDE', showMenu=true },
  RaidGroup1       = {relativeTo='GUI', relativePoint='LEFT',    offsetX=230,  offsetY=100,  visibility='AUTOHIDE', showMenu=true },
  RaidGroup2       = {relativeTo='GUI', relativePoint='LEFT',    offsetX=330,  offsetY=100,  visibility='AUTOHIDE', showMenu=true },
  RaidGroup3       = {relativeTo='GUI', relativePoint='LEFT',    offsetX=430,  offsetY=100,  visibility='AUTOHIDE', showMenu=true },
  RaidGroup4       = {relativeTo='GUI', relativePoint='LEFT',    offsetX=530,  offsetY=100,  visibility='AUTOHIDE', showMenu=true },
  RaidGroup5       = {relativeTo='GUI', relativePoint='LEFT',    offsetX=230,  offsetY=-100, visibility='AUTOHIDE', showMenu=true },
  RaidGroup6       = {relativeTo='GUI', relativePoint='LEFT',    offsetX=330,  offsetY=-100, visibility='AUTOHIDE', showMenu=true },
  RaidGroup7       = {relativeTo='GUI', relativePoint='LEFT',    offsetX=430,  offsetY=-100, visibility='AUTOHIDE', showMenu=true },
  RaidGroup8       = {relativeTo='GUI', relativePoint='LEFT',    offsetX=530,  offsetY=-100, visibility='AUTOHIDE', showMenu=true },
  RaidDruid        = {relativeTo='GUI', relativePoint='TOPLEFT', offsetX=630,  offsetY=-100, visibility='AUTOHIDE', showMenu=true },
  RaidHunter       = {relativeTo='GUI', relativePoint='TOPLEFT', offsetX=430,  offsetY=-100, visibility='AUTOHIDE', showMenu=true },
  RaidMage         = {relativeTo='GUI', relativePoint='TOPLEFT', offsetX=830,  offsetY=-100, visibility='AUTOHIDE', showMenu=true },
  RaidPaladin      = {relativeTo='GUI', relativePoint='TOPLEFT', offsetX=330,  offsetY=-100, visibility='AUTOHIDE', showMenu=true },
  RaidPriest       = {relativeTo='GUI', relativePoint='TOPLEFT', offsetX=730,  offsetY=-100, visibility='AUTOHIDE', showMenu=true },
  RaidRogue        = {relativeTo='GUI', relativePoint='TOPLEFT', offsetX=530,  offsetY=-100, visibility='AUTOHIDE', showMenu=true },
  RaidShaman       = {relativeTo='GUI', relativePoint='TOPLEFT', offsetX=330,  offsetY=-100, visibility='AUTOHIDE', showMenu=true },
  RaidWarlock      = {relativeTo='GUI', relativePoint='TOPLEFT', offsetX=930,  offsetY=-100, visibility='AUTOHIDE', showMenu=true },
  RaidWarrior      = {relativeTo='GUI', relativePoint='TOPLEFT', offsetX=230,  offsetY=-100, visibility='AUTOHIDE', showMenu=true },
  RaidPets         = {relativeTo='GUI', relativePoint='LEFT',    offsetX=630,  offsetY=100,  visibility='AUTOHIDE', showMenu=true },
}

CH_AnchorSortedList = {'NeedyListHeal','NeedyListCure','NeedyListBuff','NeedyListDead','MainTank',				-- display order in frame
                       'RaidGroup1','RaidGroup2','RaidGroup3','RaidGroup4','RaidGroup5','RaidGroup6','RaidGroup7','RaidGroup8',
                       'RaidDruid','RaidHunter','RaidMage','RaidPaladin','RaidPriest','RaidRogue','RaidShaman','RaidWarlock','RaidWarrior',
                       'RaidPets'};

-- default configuration settings
CH_DefaultConfig = { 
   CTRAEnabled                      = {tab='CONFIG',  group='MISC',         value=true,    hint=CHT_HINT_CTRA_ENABLED},
   DUFEnabled                       = {tab='CONFIG',  group='MISC',         value=true,    hint=CHT_HINT_DUF_ENABLED},
   PCUFEnabled                      = {tab='CONFIG',  group='MISC',         value=true,    hint=CHT_HINT_PCUF_ENABLED},
   WoWGuiEnabled                    = {tab='CONFIG',  group='MISC',         value=false,   hint=CHT_HINT_WOW_GUI_ENABLED},
   DcrEnabled                       = {tab='CONFIG',  group='MISC',         value=true,    hint=CHT_HINT_DCR_ENABLED},
   NeedyListEnabled                 = {tab='CONFIG',  group='MISC',         value=true,    hint=CHT_HINT_NEEDYLIST_ENABLED},
   castSpellByNameOnSelf            = {tab='CONFIG',  group='MISC',         value=true,    hint=CHT_HINT_CAST_SPELL_BY_NAME_ON_SELF},
   debugLevel                       = {tab='CONFIG',  group='MISC',         value=CH_DEBUG_NONE, hint=CHT_HINT_DEBUG_LEVEL},
   showBagCooldown                  = {tab='CONFIG',  group='COOLDOWN',     value=true,    hint=CHT_HINT_SHOW_BAG_COOLDOWN},
   includeEquipHealBonus            = {tab='CONFIG',  group='OVERHEAL',     value=true,    hint=CHT_HINT_INCLUDE_EQUIP_HEAL_BONUS},
   playerHitSound                   = {tab='CONFIG',  group='NOTIFY',       value=true,    hint=CHT_HINT_PLAYER_HIT_SOUND},
   playerHitSoundDelay              = {tab='CONFIG',  group='NOTIFY',       value=10,      hint=CHT_HINT_PLAYER_HIT_SOUND_DELAY},
   announceHitPlayEmote             = {tab='CONFIG',  group='NOTIFY',       value=false,   hint=CHT_HINT_ANNOUNCE_HIT_PLAY_EMOTE},
   announceHitToParty               = {tab='CONFIG',  group='NOTIFY',       value=false,   hint=CHT_HINT_ANNOUNCE_HIT_TO_PARTY},
   announceHitToPartyHP             = {tab='CONFIG',  group='NOTIFY',       value=80,      hint=CHT_HINT_ANNOUNCE_HIT_TO_PARTY_HP},
   announceHitToPartyHPFade         = {tab='CONFIG',  group='NOTIFY',       value=90,      hint=CHT_HINT_ANNOUNCE_HIT_TO_PARTY_HP_FADE},
   announceHitToPartyDelay          = {tab='CONFIG',  group='NOTIFY',       value=15,      hint=CHT_HINT_ANNOUNCE_HIT_TO_PARTY_DELAY},
   announceHitToPartyMsg            = {tab='CONFIG',  group='NOTIFY',       value=CHT_ANNOUNCE_HIT_TO_PARTY_MSG,hint=CHT_HINT_ANNOUNCE_HIT_TO_PARTY_MSG},
   announceOOMToParty               = {tab='CONFIG',  group='NOTIFY',       value=false,   hint=CHT_HINT_ANNOUNCE_OOM_TO_PARTY},
   announceOOMToRaid                = {tab='CONFIG',  group='NOTIFY',       value=false,   hint=CHT_HINT_ANNOUNCE_OOM_TO_RAID},
   announceOOMToCustomChannel       = {tab='CONFIG',  group='NOTIFY',       value=false,   hint=CHT_HINT_ANNOUNCE_OOM_TO_CUSTOM_CHANNEL},
   announceOOMPlayEmote             = {tab='CONFIG',  group='NOTIFY',       value=false,   hint=CHT_HINT_ANNOUNCE_OOM_PLAY_EMOTE},
   announceOOMToPartyMana           = {tab='CONFIG',  group='NOTIFY',       value=20,      hint=CHT_HINT_ANNOUNCE_OOM_TO_PARTY_MANA},
   announceOOMToPartyDelay          = {tab='CONFIG',  group='NOTIFY',       value=15,      hint=CHT_HINT_ANNOUNCE_OOM_TO_PARTY_DELAY},
   notifyCustomChannelName          = {tab='CONFIG',  group='NOTIFY',       value='',      hint=CHT_HINT_NOTIFY_CUSTOM_CHANNEL_NAME},
   notifyCustomChannelPassword      = {tab='CONFIG',  group='NOTIFY',       value='',      hint=CHT_HINT_NOTIFY_CUSTOM_CHANNEL_PASSWORD},
   notifyCustomChannelChatFrameName = {tab='CONFIG',  group='NOTIFY',       value='DEFAULT',hint=CHT_HINT_NOTIFY_CUSTOM_CHANNEL_CHAT_FRAME},
   safeTaunt                        = {tab='CONFIG',  group='COMBAT',       value=true,    hint=CHT_HINT_COMBAT_SAFE_TAUNT},
   selfDefenseAttackTarget          = {tab='CONFIG',  group='COMBAT',       value=false,   hint=CHT_HINT_SELF_DEFENSE_ATTACK_TARGET},
   selfDefensePetAttackTarget       = {tab='CONFIG',  group='COMBAT',       value=true,    hint=CHT_HINT_SELF_DEFENSE_PET_ATTACK_TARGET},
   selfDefenseNoMesmerize           = {tab='CONFIG',  group='COMBAT',       value=true,    hint=CHT_HINT_SELF_DEFENSE_NO_MESMERIZE},
   selfDefenseDirectAttack          = {tab='CONFIG',  group='COMBAT',       value=true,    hint=CHT_HINT_SELF_DEFENSE_DIRECT_ATTACK},
   selfDefenseNotInParty            = {tab='CONFIG',  group='COMBAT',       value=true,    hint=CHT_HINT_SELF_DEFENSE_NOT_IN_PARTY},

   showClickHeal                    = {tab='GUI',     group='MISC',         value=true,    hint=CHT_HINT_SHOW_CLICKHEAL},
   showParty                        = {tab='GUI',     group='MISC',         value=true,    hint=CHT_HINT_SHOW_PARTY},
   showPartyPets                    = {tab='GUI',     group='MISC',         value=true,    hint=CHT_HINT_SHOW_PARTY_PETS},
   showWoWParty                     = {tab='GUI',     group='MISC',         value=true,    hint=CHT_HINT_SHOW_WOW_PARTY},
   showPlayerMana                   = {tab='GUI',     group='MISC',         value=false,   hint=CHT_HINT_SHOW_PLAYER_MANA},
   showPetFocus                     = {tab='GUI',     group='MISC',         value=true,    hint=CHT_HINT_SHOW_PET_FOCUS},
   showPartyPetTarget               = {tab='GUI',     group='MISC',         value=true,    hint=CHT_HINT_SHOW_PARTY_PET_TARGET},
   showMesmerize                    = {tab='GUI',     group='MISC',         value=true,    hint=CHT_HINT_SHOW_MESMERIZE},
   showHints                        = {tab='GUI',     group='MISC',         value=true,    hint=CHT_HINT_SHOW_HINTS},
   updateEffectsInterval            = {tab='GUI',     group='MISC',         value=0.1,     hint=CHT_HINT_UPDATE_EFFECTS_INTERVAL},
   showFiveSecondRule               = {tab='GUI',     group='MISC',         value=true,    hint=CHT_HINT_SHOW_FIVE_SECOND_RULE,      HUNTER=false,ROGUE=false,WARRIOR=false},
   showAnchors                      = {tab='GUI',     group='MISC',         value=true,    hint=CHT_HINT_SHOW_ANCHORS},
   frameGroupMode                   = {tab='GUI',     group='MISC',         value="ALL",   hint=CHT_HINT_FRAME_GROUP_MODE},
   frameAlign                       = {tab='GUI',     group='MAIN_FRAME',   value='CENTER',hint=CHT_HINT_FRAME_ALIGN},
   extraFrameWidth                  = {tab='GUI',     group='MAIN_FRAME',   value=50,      hint=CHT_HINT_EXTRA_FRAME_WIDTH},
   extraFrameHeight                 = {tab='GUI',     group='MAIN_FRAME',   value=24,      hint=CHT_HINT_EXTRA_FRAME_HEIGHT},
   panicFrameWidth                  = {tab='GUI',     group='MAIN_FRAME',   value=100,     hint=CHT_HINT_PANIC_FRAME_WIDTH},
   panicFrameHeight                 = {tab='GUI',     group='MAIN_FRAME',   value=32,      hint=CHT_HINT_PANIC_FRAME_HEIGHT},
   playerFrameWidth                 = {tab='GUI',     group='MAIN_FRAME',   value=100,     hint=CHT_HINT_PLAYER_FRAME_WIDTH},
   playerFrameHeight                = {tab='GUI',     group='MAIN_FRAME',   value=32,      hint=CHT_HINT_PLAYER_FRAME_HEIGHT},
   partyFrameWidth                  = {tab='GUI',     group='MAIN_FRAME',   value=100,     hint=CHT_HINT_PARTY_FRAME_WIDTH},
   partyFrameHeight                 = {tab='GUI',     group='MAIN_FRAME',   value=32,      hint=CHT_HINT_PARTY_FRAME_HEIGHT},
   petFrameWidth                    = {tab='GUI',     group='MAIN_FRAME',   value=100,     hint=CHT_HINT_PET_FRAME_WIDTH},
   petFrameHeight                   = {tab='GUI',     group='MAIN_FRAME',   value=32,      hint=CHT_HINT_PET_FRAME_HEIGHT},
   partyPetFrameWidth               = {tab='GUI',     group='MAIN_FRAME',   value=100,     hint=CHT_HINT_PARTYPET_FRAME_WIDTH},
   partyPetFrameHeight              = {tab='GUI',     group='MAIN_FRAME',   value=32,      hint=CHT_HINT_PARTYPET_FRAME_HEIGHT},
   extraFrameScale                  = {tab='GUI',     group='MAIN_FRAME',   value=100,     hint=CHT_HINT_EXTRA_FRAME_SCALE},
   panicFrameScale                  = {tab='GUI',     group='MAIN_FRAME',   value=100,     hint=CHT_HINT_PANIC_FRAME_SCALE},
   playerFrameScale                 = {tab='GUI',     group='MAIN_FRAME',   value=100,     hint=CHT_HINT_PLAYER_FRAME_SCALE},
   partyFrameScale                  = {tab='GUI',     group='MAIN_FRAME',   value=100,     hint=CHT_HINT_PARTY_FRAME_SCALE},
   petFrameScale                    = {tab='GUI',     group='MAIN_FRAME',   value=100,     hint=CHT_HINT_PET_FRAME_SCALE},
   partyPetFrameScale               = {tab='GUI',     group='MAIN_FRAME',   value=100,     hint=CHT_HINT_PARTYPET_FRAME_SCALE},
   dockTarget                       = {tab='GUI',     group='TARGET_FRAME', value='RIGHT', hint=CHT_HINT_DOCK_TARGET},
   colorTarget                      = {tab='GUI',     group='TARGET_FRAME', value='PLAYER',hint=CHT_HINT_COLOR_TARGET},
   showTargetDebuffs                = {tab='GUI',     group='TARGET_FRAME', value='ENEMY_CASTABLE',hint=CHT_HINT_SHOW_TARGET_DEBUFFS},
   playerTargetFrameWidth           = {tab='GUI',     group='TARGET_FRAME', value=90,      hint=CHT_HINT_PLAYER_TARGET_FRAME_WIDTH},
   playerTargetFrameHeight          = {tab='GUI',     group='TARGET_FRAME', value=32,      hint=CHT_HINT_PLAYER_TARGET_FRAME_HEIGHT},
   partyTargetFrameWidth            = {tab='GUI',     group='TARGET_FRAME', value=90,      hint=CHT_HINT_PARTY_TARGET_FRAME_WIDTH},
   partyTargetFrameHeight           = {tab='GUI',     group='TARGET_FRAME', value=32,      hint=CHT_HINT_PARTY_TARGET_FRAME_HEIGHT},
   petTargetFrameWidth              = {tab='GUI',     group='TARGET_FRAME', value=90,      hint=CHT_HINT_PET_TARGET_FRAME_WIDTH},
   petTargetFrameHeight             = {tab='GUI',     group='TARGET_FRAME', value=32,      hint=CHT_HINT_PET_TARGET_FRAME_HEIGHT},
   partyPetTargetFrameWidth         = {tab='GUI',     group='TARGET_FRAME', value=90,      hint=CHT_HINT_PARTYPET_TARGET_FRAME_WIDTH},
   partyPetTargetFrameHeight        = {tab='GUI',     group='TARGET_FRAME', value=32,      hint=CHT_HINT_PARTYPET_TARGET_FRAME_HEIGHT},
   playerTargetFrameScale           = {tab='GUI',     group='TARGET_FRAME', value=100,     hint=CHT_HINT_PLAYER_TARGET_FRAME_SCALE},
   partyTargetFrameScale            = {tab='GUI',     group='TARGET_FRAME', value=100,     hint=CHT_HINT_PARTY_TARGET_FRAME_SCALE},
   petTargetFrameScale              = {tab='GUI',     group='TARGET_FRAME', value=100,     hint=CHT_HINT_PET_TARGET_FRAME_SCALE},
   partyPetTargetFrameScale         = {tab='GUI',     group='TARGET_FRAME', value=100,     hint=CHT_HINT_PARTYPET_TARGET_FRAME_SCALE},
   unitTooltipInfo                  = {tab='GUI',     group='TOOLTIP',      value='ALWAYS',hint=CHT_HINT_UNIT_TOOLTIP_INFO},
   actionsTooltipInfo               = {tab='GUI',     group='TOOLTIP',      value='ALWAYS',hint=CHT_HINT_ACTIONS_TOOLTIP_INFO},
   actionsTooltipShowSpellRank      = {tab='GUI',     group='TOOLTIP',      value=true,    hint=CHT_HINT_ACTIONS_TOOLTIP_SHOW_SPELL_RANK},
   actionsTooltipSpellRankShowMax   = {tab='GUI',     group='TOOLTIP',      value=false,   hint=CHT_HINT_ACTIONS_TOOLTIP_SPELL_RANK_SHOW_MAX},
   unitTooltipScale                 = {tab='GUI',     group='TOOLTIP',      value=100,     hint=CHT_HINT_UNIT_TOOLTIP_SCALE},
   actionsTooltipScale              = {tab='GUI',     group='TOOLTIP',      value=100,     hint=CHT_HINT_ACTIONS_TOOLTIP_SCALE},
   hintTooltipScale                 = {tab='GUI',     group='TOOLTIP',      value=100,     hint=CHT_HINT_HINT_TOOLTIP_SCALE},

   showRaidGroup1                   = {tab='EXTENDED',group='RAID',         value=false,   hint=CHT_HINT_SHOW_RAID_GROUP1},
   showRaidGroup2                   = {tab='EXTENDED',group='RAID',         value=false,   hint=CHT_HINT_SHOW_RAID_GROUP2},
   showRaidGroup3                   = {tab='EXTENDED',group='RAID',         value=false,   hint=CHT_HINT_SHOW_RAID_GROUP3},
   showRaidGroup4                   = {tab='EXTENDED',group='RAID',         value=false,   hint=CHT_HINT_SHOW_RAID_GROUP4},
   showRaidGroup5                   = {tab='EXTENDED',group='RAID',         value=false,   hint=CHT_HINT_SHOW_RAID_GROUP5},
   showRaidGroup6                   = {tab='EXTENDED',group='RAID',         value=false,   hint=CHT_HINT_SHOW_RAID_GROUP6},
   showRaidGroup7                   = {tab='EXTENDED',group='RAID',         value=false,   hint=CHT_HINT_SHOW_RAID_GROUP7},
   showRaidGroup8                   = {tab='EXTENDED',group='RAID',         value=false,   hint=CHT_HINT_SHOW_RAID_GROUP8},
   showRaidClassDRUID               = {tab='EXTENDED',group='RAID',         value=false,   hint=CHT_HINT_SHOW_RAID_CLASS_DRUID},
   showRaidClassHUNTER              = {tab='EXTENDED',group='RAID',         value=false,   hint=CHT_HINT_SHOW_RAID_CLASS_HUNTER},
   showRaidClassMAGE                = {tab='EXTENDED',group='RAID',         value=false,   hint=CHT_HINT_SHOW_RAID_CLASS_MAGE},
   showRaidClassPALADIN             = {tab='EXTENDED',group='RAID',         value=false,   hint=CHT_HINT_SHOW_RAID_CLASS_PALADIN},
   showRaidClassPRIEST              = {tab='EXTENDED',group='RAID',         value=false,   hint=CHT_HINT_SHOW_RAID_CLASS_PRIEST},
   showRaidClassROGUE               = {tab='EXTENDED',group='RAID',         value=false,   hint=CHT_HINT_SHOW_RAID_CLASS_ROGUE},
   showRaidClassSHAMAN              = {tab='EXTENDED',group='RAID',         value=false,   hint=CHT_HINT_SHOW_RAID_CLASS_SHAMAN},
   showRaidClassWARLOCK             = {tab='EXTENDED',group='RAID',         value=false,   hint=CHT_HINT_SHOW_RAID_CLASS_WARLOCK},
   showRaidClassWARRIOR             = {tab='EXTENDED',group='RAID',         value=false,   hint=CHT_HINT_SHOW_RAID_CLASS_WARRIOR},
   showRaidPets                     = {tab='EXTENDED',group='RAID',         value=false,   hint=CHT_HINT_SHOW_RAID_PETS},
   raidPetsScanInterval             = {tab='EXTENDED',group='RAID',         value=5,       hint=CHT_HINT_RAID_PETS_SCAN_INTERVAL},
   hidePartyInRaid                  = {tab='EXTENDED',group='RAID',         value='WOW',   hint=CHT_HINT_RAID_HIDE_PARTY_IN_RAID},
   raidTooltipInfo                  = {tab='EXTENDED',group='RAID',         value='TOP',   hint=CHT_HINT_RAID_TOOLTIP_INFO},
   raidGroupFrameWidth              = {tab='EXTENDED',group='RAID',         value=100,     hint=CHT_HINT_RAID_GROUP_FRAME_WIDTH},
   raidGroupFrameHeight             = {tab='EXTENDED',group='RAID',         value=32,      hint=CHT_HINT_RAID_GROUP_FRAME_HEIGTH},
   raidClassFrameWidth              = {tab='EXTENDED',group='RAID',         value=100,     hint=CHT_HINT_RAID_CLASS_FRAME_WIDTH},
   raidClassFrameHeight             = {tab='EXTENDED',group='RAID',         value=32,      hint=CHT_HINT_RAID_CLASS_FRAME_HEIGTH},
   raidGroupFrameScale              = {tab='EXTENDED',group='RAID',         value=100,     hint=CHT_HINT_RAID_GROUP_FRAME_SCALE},
   raidClassFrameScale              = {tab='EXTENDED',group='RAID',         value=100,     hint=CHT_HINT_RAID_CLASS_FRAME_SCALE},
   mainTankFrameWidth               = {tab='EXTENDED',group='MAINTANK',     value=100,     hint=CHT_HINT_MAIN_TANK_FRAME_WIDTH},
   mainTankFrameHeight              = {tab='EXTENDED',group='MAINTANK',     value=32,      hint=CHT_HINT_MAIN_TANK_FRAME_HEIGHT},
   mainTankFrameScale               = {tab='EXTENDED',group='MAINTANK',     value=100,     hint=CHT_HINT_MAIN_TANK_FRAME_SCALE},
   needyListHealEnabled             = {tab='EXTENDED',group='NEEDYLISTHEAL',value='NEVER', hint=CHT_HINT_ENABLE_NEEDY_LIST_HEAL,   PRIEST="PARTYRAID",DRUID="PARTYRAID",SHAMAN="PARTYRAID",PALADIN="PARTYRAID"},
   needyListHealHideInBattlefield   = {tab='EXTENDED',group='NEEDYLISTHEAL',value=true,    hint=CHT_HINT_NEEDY_LIST_HEAL_HIDE_IN_BATTLEFIELD},
   needyListHealScanInterval        = {tab='EXTENDED',group='NEEDYLISTHEAL',value=0.2,     hint=CHT_HINT_NEEDY_LIST_HEAL_SCAN_INTERVAL},
   needyListHealGrowDirection       = {tab='EXTENDED',group='NEEDYLISTHEAL',value='TOP',   hint=CHT_HINT_NEEDY_LIST_HEAL_GROW_DIRECTION},
   needyListHealMaxUnits            = {tab='EXTENDED',group='NEEDYLISTHEAL',value=10,      hint=CHT_HINT_NEEDY_LIST_HEAL_MAX_UNITS},
   needyListHealLockTanks           = {tab='EXTENDED',group='NEEDYLISTHEAL',value=true,    hint=CHT_HINT_NEEDY_LIST_HEAL_LOCK_TANKS},
   needyListHealTooltipInfo         = {tab='EXTENDED',group='NEEDYLISTHEAL',value='TOP',   hint=CHT_HINT_NEEDY_LIST_HEAL_TOOLTIP_INFO},
   needyListHealHealthPercentage    = {tab='EXTENDED',group='NEEDYLISTHEAL',value=90,      hint=CHT_HINT_NEEDY_LIST_HEAL_HEALTH_PERCENTAGE},
   needyListHealShowPlayer          = {tab='EXTENDED',group='NEEDYLISTHEAL',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_PLAYER},
   needyListHealShowParty           = {tab='EXTENDED',group='NEEDYLISTHEAL',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_PARTY},
   needyListHealShowRaidGroup1      = {tab='EXTENDED',group='NEEDYLISTHEAL',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP1},
   needyListHealShowRaidGroup2      = {tab='EXTENDED',group='NEEDYLISTHEAL',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP2},
   needyListHealShowRaidGroup3      = {tab='EXTENDED',group='NEEDYLISTHEAL',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP3},
   needyListHealShowRaidGroup4      = {tab='EXTENDED',group='NEEDYLISTHEAL',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP4},
   needyListHealShowRaidGroup5      = {tab='EXTENDED',group='NEEDYLISTHEAL',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP5},
   needyListHealShowRaidGroup6      = {tab='EXTENDED',group='NEEDYLISTHEAL',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP6},
   needyListHealShowRaidGroup7      = {tab='EXTENDED',group='NEEDYLISTHEAL',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP7},
   needyListHealShowRaidGroup8      = {tab='EXTENDED',group='NEEDYLISTHEAL',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP8},
   needyListHealShowClassDRUID      = {tab='EXTENDED',group='NEEDYLISTHEAL',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_DRUID},
   needyListHealShowClassHUNTER     = {tab='EXTENDED',group='NEEDYLISTHEAL',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_HUNTER},
   needyListHealShowClassMAGE       = {tab='EXTENDED',group='NEEDYLISTHEAL',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_MAGE},
   needyListHealShowClassPALADIN    = {tab='EXTENDED',group='NEEDYLISTHEAL',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_PALADIN},
   needyListHealShowClassPRIEST     = {tab='EXTENDED',group='NEEDYLISTHEAL',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_PRIEST},
   needyListHealShowClassROGUE      = {tab='EXTENDED',group='NEEDYLISTHEAL',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_ROGUE},
   needyListHealShowClassSHAMAN     = {tab='EXTENDED',group='NEEDYLISTHEAL',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_SHAMAN},
   needyListHealShowClassWARLOCK    = {tab='EXTENDED',group='NEEDYLISTHEAL',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_WARLOCK},
   needyListHealShowClassWARRIOR    = {tab='EXTENDED',group='NEEDYLISTHEAL',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_WARRIOR},
   needyListHealShowPet             = {tab='EXTENDED',group='NEEDYLISTHEAL',value=false,   hint=CHT_HINT_NEEDY_LIST_SHOW_PET},
   needyListHealShowPartyPets       = {tab='EXTENDED',group='NEEDYLISTHEAL',value=false,   hint=CHT_HINT_NEEDY_LIST_SHOW_PARTY_PETS},
   needyListHealShowRaidPets        = {tab='EXTENDED',group='NEEDYLISTHEAL',value=false,   hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_PETS},
   needyListHealFrameWidth          = {tab='EXTENDED',group='NEEDYLISTHEAL',value=100,     hint=CHT_HINT_NEEDY_LIST_HEAL_FRAME_WIDTH},
   needyListHealFrameHeight         = {tab='EXTENDED',group='NEEDYLISTHEAL',value=32,      hint=CHT_HINT_NEEDY_LIST_HEAL_FRAME_HEIGHT},
   needyListHealFrameScale          = {tab='EXTENDED',group='NEEDYLISTHEAL',value=100,     hint=CHT_HINT_NEEDY_LIST_HEAL_FRAME_SCALE},
   needyListCureEnabled             = {tab='EXTENDED',group='NEEDYLISTCURE',value='PARTYRAID',hint=CHT_HINT_ENABLE_NEEDY_LIST_CURE,   WARRIOR="NEVER",ROGUE="NEVER",HUNTER="NEVER",WARLOCK="NEVER"},
   needyListCureHideInBattlefield   = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_CURE_HIDE_IN_BATTLEFIELD},
   needyListCureShowCurse           = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_CURE_SHOW_CURSE},
   needyListCureShowPoison          = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_CURE_SHOW_POISON},
   needyListCureShowDisease         = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_CURE_SHOW_DISEASE},
   needyListCureShowMagic           = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_CURE_SHOW_MAGIC},
   needyListCureScanInterval        = {tab='EXTENDED',group='NEEDYLISTCURE',value=1,       hint=CHT_HINT_NEEDY_LIST_CURE_SCAN_INTERVAL},
   needyListCureGrowDirection       = {tab='EXTENDED',group='NEEDYLISTCURE',value='TOP',   hint=CHT_HINT_NEEDY_LIST_CURE_GROW_DIRECTION},
   needyListCureMaxUnits            = {tab='EXTENDED',group='NEEDYLISTCURE',value=10,      hint=CHT_HINT_NEEDY_LIST_CURE_MAX_UNITS},
   needyListCureTooltipInfo         = {tab='EXTENDED',group='NEEDYLISTCURE',value='TOP',   hint=CHT_HINT_NEEDY_LIST_CURE_TOOLTIP_INFO},
   needyListCureShowPlayer          = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_PLAYER},
   needyListCureShowParty           = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_PARTY},
   needyListCureShowRaidGroup1      = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP1},
   needyListCureShowRaidGroup2      = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP2},
   needyListCureShowRaidGroup3      = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP3},
   needyListCureShowRaidGroup4      = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP4},
   needyListCureShowRaidGroup5      = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP5},
   needyListCureShowRaidGroup6      = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP6},
   needyListCureShowRaidGroup7      = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP7},
   needyListCureShowRaidGroup8      = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP8},
   needyListCureShowClassDRUID      = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_DRUID},
   needyListCureShowClassHUNTER     = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_HUNTER},
   needyListCureShowClassMAGE       = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_MAGE},
   needyListCureShowClassPALADIN    = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_PALADIN},
   needyListCureShowClassPRIEST     = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_PRIEST},
   needyListCureShowClassROGUE      = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_ROGUE},
   needyListCureShowClassSHAMAN     = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_SHAMAN},
   needyListCureShowClassWARLOCK    = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_WARLOCK},
   needyListCureShowClassWARRIOR    = {tab='EXTENDED',group='NEEDYLISTCURE',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_WARRIOR},
   needyListCureShowPet             = {tab='EXTENDED',group='NEEDYLISTCURE',value=false,   hint=CHT_HINT_NEEDY_LIST_SHOW_PET},
   needyListCureShowPartyPets       = {tab='EXTENDED',group='NEEDYLISTCURE',value=false,   hint=CHT_HINT_NEEDY_LIST_SHOW_PARTY_PETS},
   needyListCureShowRaidPets        = {tab='EXTENDED',group='NEEDYLISTCURE',value=false,   hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_PETS},
   needyListCureFrameWidth          = {tab='EXTENDED',group='NEEDYLISTCURE',value=100,     hint=CHT_HINT_NEEDY_LIST_CURE_FRAME_WIDTH},
   needyListCureFrameHeight         = {tab='EXTENDED',group='NEEDYLISTCURE',value=24,      hint=CHT_HINT_NEEDY_LIST_CURE_FRAME_HEIGHT},
   needyListCureFrameScale          = {tab='EXTENDED',group='NEEDYLISTCURE',value=100,     hint=CHT_HINT_NEEDY_LIST_CURE_FRAME_SCALE},
   needyListBuffEnabled             = {tab='EXTENDED',group='NEEDYLISTBUFF',value='PARTYRAID',hint=CHT_HINT_ENABLE_NEEDY_LIST_BUFF,   WARRIOR="NEVER",ROGUE="NEVER",HUNTER="NEVER",WARLOCK="NEVER"},
   needyListBuffHideInBattlefield   = {tab='EXTENDED',group='NEEDYLISTBUFF',value=true,    hint=CHT_HINT_NEEDY_LIST_BUFF_HIDE_IN_BATTLEFIELD},
   needyListBuffScanInterval        = {tab='EXTENDED',group='NEEDYLISTBUFF',value=3,       hint=CHT_HINT_NEEDY_LIST_BUFF_SCAN_INTERVAL},
   needyListBuffGrowDirection       = {tab='EXTENDED',group='NEEDYLISTBUFF',value='TOP',   hint=CHT_HINT_NEEDY_LIST_BUFF_GROW_DIRECTION},
   needyListBuffMaxUnits            = {tab='EXTENDED',group='NEEDYLISTBUFF',value=10,      hint=CHT_HINT_NEEDY_LIST_BUFF_MAX_UNITS},
   needyListBuffTooltipInfo         = {tab='EXTENDED',group='NEEDYLISTBUFF',value='TOP',   hint=CHT_HINT_NEEDY_LIST_BUFF_TOOLTIP_INFO},
   needyListBuffShowPlayer          = {tab='EXTENDED',group='NEEDYLISTBUFF',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_PLAYER},
   needyListBuffShowParty           = {tab='EXTENDED',group='NEEDYLISTBUFF',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_PARTY},
   needyListBuffShowRaidGroup1      = {tab='EXTENDED',group='NEEDYLISTBUFF',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP1},
   needyListBuffShowRaidGroup2      = {tab='EXTENDED',group='NEEDYLISTBUFF',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP2},
   needyListBuffShowRaidGroup3      = {tab='EXTENDED',group='NEEDYLISTBUFF',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP3},
   needyListBuffShowRaidGroup4      = {tab='EXTENDED',group='NEEDYLISTBUFF',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP4},
   needyListBuffShowRaidGroup5      = {tab='EXTENDED',group='NEEDYLISTBUFF',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP5},
   needyListBuffShowRaidGroup6      = {tab='EXTENDED',group='NEEDYLISTBUFF',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP6},
   needyListBuffShowRaidGroup7      = {tab='EXTENDED',group='NEEDYLISTBUFF',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP7},
   needyListBuffShowRaidGroup8      = {tab='EXTENDED',group='NEEDYLISTBUFF',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP8},
   needyListBuffShowClassDRUID      = {tab='EXTENDED',group='NEEDYLISTBUFF',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_DRUID},
   needyListBuffShowClassHUNTER     = {tab='EXTENDED',group='NEEDYLISTBUFF',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_HUNTER},
   needyListBuffShowClassMAGE       = {tab='EXTENDED',group='NEEDYLISTBUFF',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_MAGE},
   needyListBuffShowClassPALADIN    = {tab='EXTENDED',group='NEEDYLISTBUFF',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_PALADIN},
   needyListBuffShowClassPRIEST     = {tab='EXTENDED',group='NEEDYLISTBUFF',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_PRIEST},
   needyListBuffShowClassROGUE      = {tab='EXTENDED',group='NEEDYLISTBUFF',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_ROGUE},
   needyListBuffShowClassSHAMAN     = {tab='EXTENDED',group='NEEDYLISTBUFF',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_SHAMAN},
   needyListBuffShowClassWARLOCK    = {tab='EXTENDED',group='NEEDYLISTBUFF',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_WARLOCK},
   needyListBuffShowClassWARRIOR    = {tab='EXTENDED',group='NEEDYLISTBUFF',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_WARRIOR},
   needyListBuffShowPet             = {tab='EXTENDED',group='NEEDYLISTBUFF',value=false,   hint=CHT_HINT_NEEDY_LIST_SHOW_PET},
   needyListBuffShowPartyPets       = {tab='EXTENDED',group='NEEDYLISTBUFF',value=false,   hint=CHT_HINT_NEEDY_LIST_SHOW_PARTY_PETS},
   needyListBuffShowRaidPets        = {tab='EXTENDED',group='NEEDYLISTBUFF',value=false,   hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_PETS},
   needyListBuffFrameWidth          = {tab='EXTENDED',group='NEEDYLISTBUFF',value=100,     hint=CHT_HINT_NEEDY_LIST_BUFF_FRAME_WIDTH},
   needyListBuffFrameHeight         = {tab='EXTENDED',group='NEEDYLISTBUFF',value=24,      hint=CHT_HINT_NEEDY_LIST_BUFF_FRAME_HEIGHT},
   needyListBuffFrameScale          = {tab='EXTENDED',group='NEEDYLISTBUFF',value=100,     hint=CHT_HINT_NEEDY_LIST_BUFF_FRAME_SCALE},
   needyListDeadEnabled             = {tab='EXTENDED',group='NEEDYLISTDEAD',value='NEVER', hint=CHT_HINT_ENABLE_NEEDY_LIST_DEAD,    PRIEST="PARTYRAID",DRUID="PARTYRAID",SHAMAN="PARTYRAID",PALADIN="PARTYRAID"},
   needyListDeadHideInBattlefield   = {tab='EXTENDED',group='NEEDYLISTDEAD',value=true,    hint=CHT_HINT_NEEDY_LIST_DEAD_HIDE_IN_BATTLEFIELD},
   needyListDeadScanInterval        = {tab='EXTENDED',group='NEEDYLISTDEAD',value=5,       hint=CHT_HINT_NEEDY_LIST_DEAD_SCAN_INTERVAL},
   needyListDeadGrowDirection       = {tab='EXTENDED',group='NEEDYLISTDEAD',value='TOP',   hint=CHT_HINT_NEEDY_LIST_DEAD_GROW_DIRECTION},
   needyListDeadMaxUnits            = {tab='EXTENDED',group='NEEDYLISTDEAD',value=10,      hint=CHT_HINT_NEEDY_LIST_DEAD_MAX_UNITS},
   needyListDeadTooltipInfo         = {tab='EXTENDED',group='NEEDYLISTDEAD',value='TOP',   hint=CHT_HINT_NEEDY_LIST_DEAD_TOOLTIP_INFO},
   needyListDeadShowPlayer          = {tab='EXTENDED',group='NEEDYLISTDEAD',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_PLAYER},
   needyListDeadShowParty           = {tab='EXTENDED',group='NEEDYLISTDEAD',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_PARTY},
   needyListDeadShowRaidGroup1      = {tab='EXTENDED',group='NEEDYLISTDEAD',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP1},
   needyListDeadShowRaidGroup2      = {tab='EXTENDED',group='NEEDYLISTDEAD',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP2},
   needyListDeadShowRaidGroup3      = {tab='EXTENDED',group='NEEDYLISTDEAD',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP3},
   needyListDeadShowRaidGroup4      = {tab='EXTENDED',group='NEEDYLISTDEAD',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP4},
   needyListDeadShowRaidGroup5      = {tab='EXTENDED',group='NEEDYLISTDEAD',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP5},
   needyListDeadShowRaidGroup6      = {tab='EXTENDED',group='NEEDYLISTDEAD',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP6},
   needyListDeadShowRaidGroup7      = {tab='EXTENDED',group='NEEDYLISTDEAD',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP7},
   needyListDeadShowRaidGroup8      = {tab='EXTENDED',group='NEEDYLISTDEAD',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_GROUP8},
   needyListDeadShowClassDRUID      = {tab='EXTENDED',group='NEEDYLISTDEAD',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_DRUID},
   needyListDeadShowClassHUNTER     = {tab='EXTENDED',group='NEEDYLISTDEAD',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_HUNTER},
   needyListDeadShowClassMAGE       = {tab='EXTENDED',group='NEEDYLISTDEAD',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_MAGE},
   needyListDeadShowClassPALADIN    = {tab='EXTENDED',group='NEEDYLISTDEAD',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_PALADIN},
   needyListDeadShowClassPRIEST     = {tab='EXTENDED',group='NEEDYLISTDEAD',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_PRIEST},
   needyListDeadShowClassROGUE      = {tab='EXTENDED',group='NEEDYLISTDEAD',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_ROGUE},
   needyListDeadShowClassSHAMAN     = {tab='EXTENDED',group='NEEDYLISTDEAD',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_SHAMAN},
   needyListDeadShowClassWARLOCK    = {tab='EXTENDED',group='NEEDYLISTDEAD',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_WARLOCK},
   needyListDeadShowClassWARRIOR    = {tab='EXTENDED',group='NEEDYLISTDEAD',value=true,    hint=CHT_HINT_NEEDY_LIST_SHOW_CLASS_WARRIOR},
   needyListDeadShowPet             = {tab='EXTENDED',group='NEEDYLISTDEAD',value=false,   hint=CHT_HINT_NEEDY_LIST_SHOW_PET},
   needyListDeadShowPartyPets       = {tab='EXTENDED',group='NEEDYLISTDEAD',value=false,   hint=CHT_HINT_NEEDY_LIST_SHOW_PARTY_PETS},
   needyListDeadShowRaidPets        = {tab='EXTENDED',group='NEEDYLISTDEAD',value=false,   hint=CHT_HINT_NEEDY_LIST_SHOW_RAID_PETS},
   needyListDeadFrameWidth          = {tab='EXTENDED',group='NEEDYLISTDEAD',value=100,     hint=CHT_HINT_NEEDY_LIST_DEAD_FRAME_WIDTH},
   needyListDeadFrameHeight         = {tab='EXTENDED',group='NEEDYLISTDEAD',value=24,      hint=CHT_HINT_NEEDY_LIST_DEAD_FRAME_HEIGHT},
   needyListDeadFrameScale          = {tab='EXTENDED',group='NEEDYLISTDEAD',value=100,     hint=CHT_HINT_NEEDY_LIST_DEAD_FRAME_SCALE},

   finetunePwS                      = {tab='FRIEND',  group='MISC',         value=true,    hint=CHT_HINT_FINETUNE_PWS},
   finetuneRenew                    = {tab='FRIEND',  group='MISC',         value=true,    hint=CHT_HINT_FINETUNE_RENEW},
   finetuneRegrowth                 = {tab='FRIEND',  group='MISC',         value=true,    hint=CHT_HINT_FINETUNE_REGROWTH},
   finetuneRejuvenation             = {tab='FRIEND',  group='MISC',         value=true,    hint=CHT_HINT_FINETUNE_REJUVENATION},
   adjustSpellRank                  = {tab='FRIEND',  group='MISC',         value=true,    hint=CHT_HINT_ADJUST_SPELL_RANK},
   toggleShadowform                 = {tab='FRIEND',  group='MISC',         value=true,    hint=CHT_HINT_TOGGLE_SHADOWFORM},
   showFriendMana                   = {tab='FRIEND',  group='MISC',         value=false,   hint=CHT_HINT_SHOW_FRIEND_MANA},
   showFriendRage                   = {tab='FRIEND',  group='MISC',         value=false,   hint=CHT_HINT_SHOW_FRIEND_RAGE},
   showFriendEnergy                 = {tab='FRIEND',  group='MISC',         value=false,   hint=CHT_HINT_SHOW_FRIEND_ENERGY},
   showFriendFocus                  = {tab='FRIEND',  group='MISC',         value=false,   hint=CHT_HINT_SHOW_FRIEND_FOCUS},
   resurrectPlayer                  = {tab='FRIEND',  group='MISC',         value='AFTER_COMBAT',hint=CHT_HINT_RESURRECT_PLAYER},
   friendHPLabel                    = {tab='FRIEND',  group='MISC',         value='PERCENT_SIGN',hint=CHT_HINT_FRIEND_HP_LABEL},
   friendFrameBackground            = {tab='FRIEND',  group='MISC',         value='HEALTH',hint=CHT_HINT_FRIEND_FRAME_BACKGROUND},
   partyLabel                       = {tab='FRIEND',  group='MISC',         value='CLASS', hint=CHT_HINT_PARTY_LABEL},
   showFriendDebuffs                = {tab='FRIEND',  group='MISC',         value='ALL',   hint=CHT_HINT_SHOW_FRIEND_DEBUFFS},
   castOnCharmedFriend              = {tab='FRIEND',  group='MISC',         value=false,   hint=CHT_HINT_CAST_ON_CHARMED_FRIEND},
   checkHealRange                   = {tab='FRIEND',  group='MISC',         value='NEVER', hint=CHT_HINT_CHECK_HEAL_RANGE},
   healRangeScanMainTanksInterval   = {tab='FRIEND',  group='MISC',         value=1,       hint=CHT_HINT_HEAL_RANGE_SCAN_MAINTANKS_INTERVAL},
   healRangeScanPartyInterval       = {tab='FRIEND',  group='MISC',         value=1,       hint=CHT_HINT_HEAL_RANGE_SCAN_PARTY_INTERVAL},
   healRangeScanRaidInterval        = {tab='FRIEND',  group='MISC',         value=2,       hint=CHT_HINT_HEAL_RANGE_SCAN_RAID_INTERVAL},

   targetingMode                    = {tab='ENEMY',   group='MISC',         value='INT',   hint=CHT_HINT_TARGETING_MODE},
   showLevelDiff                    = {tab='EMENY',   group='MISC',         value=true,    hint=CHT_HINT_SHOW_LEVEL_DIFF},
   showEnemyMana                    = {tab='ENEMY',   group='MISC',         value=true,    hint=CHT_HINT_SHOW_ENEMY_MANA},
   showEnemyRage                    = {tab='ENEMY',   group='MISC',         value=true,    hint=CHT_HINT_SHOW_ENEMY_RAGE},
   showEnemyEnergy                  = {tab='ENEMY',   group='MISC',         value=true,    hint=CHT_HINT_SHOW_ENEMY_ENERGY},
   showEnemyFocus                   = {tab='ENEMY',   group='MISC',         value=true,    hint=CHT_HINT_SHOW_ENEMY_FOCUS},
   castOnCharmedEnemy               = {tab='ENEMY',   group='MISC',         value=true,    hint=CHT_HINT_CAST_ON_CHARMED_ENEMY},

   panicOnUnmapped                  = {tab='PANIC',   group='MISC',         value=true,    hint=CHT_HINT_PANIC_ON_UNMAPPED},
   panicHealPlayer                  = {tab='PANIC',   group='MISC',         value=true,    hint=CHT_HINT_PANIC_HEAL_PLAYER},
   panicHealPet                     = {tab='PANIC',   group='MISC',         value=true,    hint=CHT_HINT_PANIC_HEAL_PET},
   panicHealParty                   = {tab='PANIC',   group='MISC',         value=true,    hint=CHT_HINT_PANIC_HEAL_PARTY},
   panicHealPartyPet                = {tab='PANIC',   group='MISC',         value=true,    hint=CHT_HINT_PANIC_HEAL_PARTY_PET},
   panicHealRaid                    = {tab='PANIC',   group='MISC',         value=false,   hint=CHT_HINT_PANIC_HEAL_RAID},
   panicHealRaidPet                 = {tab='PANIC',   group='MISC',         value=false,   hint=CHT_HINT_PANIC_HEAL_RAID_PET},
   panicBuffPlayer                  = {tab='PANIC',   group='MISC',         value=true,    hint=CHT_HINT_PANIC_BUFF_PLAYER},
   panicBuffPet                     = {tab='PANIC',   group='MISC',         value=true,    hint=CHT_HINT_PANIC_BUFF_PET},
   panicBuffParty                   = {tab='PANIC',   group='MISC',         value=true,    hint=CHT_HINT_PANIC_BUFF_PARTY},
   panicBuffPartyPet                = {tab='PANIC',   group='MISC',         value=true,    hint=CHT_HINT_PANIC_BUFF_PARTY_PET},
   panicBuffRaid                    = {tab='PANIC',   group='MISC',         value=false,   hint=CHT_HINT_PANIC_BUFF_RAID},
   panicBuffRaidPet                 = {tab='PANIC',   group='MISC',         value=false,   hint=CHT_HINT_PANIC_BUFF_RAID_PET},
   panicCure                        = {tab='PANIC',   group='MISC',         value=true,    hint=CHT_HINT_PANIC_CURE},
   panicBehavior                    = {tab='PANIC',   group='BEHAVIOR',     value='FULL',  hint=CHT_HINT_PANIC_BEHAVIOR},

   buffPlayExpireSound              = {tab='BUFF',    group='MISC',         value=true,    hint=CHT_HINT_BUFF_PLAY_EXPIRE_SOUND},
   buffShowExpireMsg                = {tab='BUFF',    group='MISC',         value=true,    hint=CHT_HINT_BUFF_SHOW_EXPIRE_MSG},
   buffPlayWarnSound                = {tab='BUFF',    group='MISC',         value=true,    hint=CHT_HINT_BUFF_PLAY_WARN_SOUND},
   buffShowWarnMsg                  = {tab='BUFF',    group='MISC',         value=true,    hint=CHT_HINT_BUFF_SHOW_WARN_MSG},
   warnTrackingBuff                 = {tab='BUFF',    group='MISC',         value=true,    hint=CHT_HINT_WARN_TRACKING_BUFF},
   showRaidEffects                  = {tab='BUFF',    group='MISC',         value=true,    hint=CHT_HINT_SHOW_RAID_EFFECTS},
   combineMissingBuffsInPanic       = {tab='BUFF',    group='MISC',         value=true,    hint=CHT_HINT_COMBINE_BUFFS_IN_PANIC},

   extra1Name                       = {tab='EXTRA1',  group='MISC',         value='Ex1',   hint=CHT_HINT_EXTRA1NAME},
   extra1Hidden                     = {tab='EXTRA1',  group='MISC',         value=false,   hint=CHT_HINT_EXTRA1HIDDEN},
   extra2Name                       = {tab='EXTRA2',  group='MISC',         value='Ex2',   hint=CHT_HINT_EXTRA2NAME},
   extra2Hidden                     = {tab='EXTRA2',  group='MISC',         value=false,   hint=CHT_HINT_EXTRA2HIDDEN},
   extra3Name                       = {tab='EXTRA3',  group='MISC',         value='Ex3',   hint=CHT_HINT_EXTRA3NAME},
   extra3Hidden                     = {tab='EXTRA3',  group='MISC',         value=false,   hint=CHT_HINT_EXTRA3HIDDEN},
   extra4Name                       = {tab='EXTRA4',  group='MISC',         value='Ex4',   hint=CHT_HINT_EXTRA4NAME},
   extra4Hidden                     = {tab='EXTRA4',  group='MISC',         value=false,   hint=CHT_HINT_EXTRA4HIDDEN},

   overheal                         = {tab='CONFIG',  group='OVERHEAL',    						-- below AND at !!! checkTime in milliesc
                                       value={ QUICK = { startBelow = 99, downgrade = true, combatDowngrade = false, baseOnPerc = 50, hotPerc = 50, modifyTotalPerc = 100,
                                                         dpsCheck = 5, clickAbortPerc = 101, lomDowngradeRanks = 0,
                                                       },
                                               SLOW  = { startBelow = 99, downgrade = true, combatDowngrade = false, baseOnPerc = 50, hotPerc = 50, modifyTotalPerc = 100,
                                                         dpsCheck = 5, clickAbortPerc = 101, lomDowngradeRanks = 0,
                                                       },
                                             },
                                       hint=CHT_HINT_OVERHEAL},

  partySort                         = {tab='GUI',     group='MISC',
                                       value={[1]='player',[2]='party1',[3]='party2',[4]='party3',[5]='party4',
                                              [6]='pet',[7]='partypet1',[8]='partypet2',[9]='partypet3',[10]='partypet4'},
                                       hint=CHT_HINT_PARTY_SORT},

  nameColor                         = {tab='ENEMY',   group='MISC',
                                       value={ playertarget = 'DEFAULT', party1target = 'DEFAULT', party2target = 'DEFAULT', party3target = 'DEFAULT', party4target = 'DEFAULT',
                                               pettarget = 'DEFAULT', partypet1target = 'DEFAULT', partypet2target = 'DEFAULT', partypet3target = 'DEFAULT', partypet4target = 'DEFAULT',
                                               SHIELD = 'DEFAULT', SELECTED = 'DEFAULT', FRIEND = 'DEFAULT'},
                                       hint=CHT_HINT_NAME_COLOR},

   notifySpellCast                  = {tab='CONFIG',  group='NOTIFY2',     
                                       value={},   
                                       PRIEST ={ [CH_SPELL_RESURRECTION]          ={say=true, party=true, raid=true, target=true, },
                                               },
                                       DRUID  ={ [CH_SPELL_REBIRTH]               ={say=true, party=true, raid=true, target=true, },
                                               },
                                       PALADIN={ [CH_SPELL_LAY_ON_HANDS]          ={say=nil,  party=true, raid=true, target=true, },
                                                [CH_SPELL_DIVINE_INTERVENTION]    ={say=nil,  party=true, raid=true, target=true, },
                                                [CH_SPELL_REDEMPTION]             ={say=true, party=true, raid=true, target=true, },
                                               },
                                       SHAMAN ={
                                                [CH_SPELL_ANCESTRAL_SPIRIT]       ={say=true, party=true, raid=true, target=true, },
                                               },
                                       hint=CHT_HINT_NOTIFY_SPELLCAST},
};
