public PowerTaskList GetLastHandledTaskList(PowerTaskList taskList)
    {
        if (taskList == null)
        {
            return(null);
        }
        Spell         spell = UnityEngine.Object.Instantiate <Spell>(this);
        PowerTaskList list  = null;

        for (PowerTaskList list2 = taskList.GetLast(); list2 != null; list2 = list2.GetPrevious())
        {
            spell.m_taskList = list2;
            spell.RemoveAllTargets();
            if (spell.AddPowerTargets())
            {
                list = list2;
                break;
            }
        }
        UnityEngine.Object.DestroyImmediate(spell);
        return(list);
    }