Пишу класс, наследующий XML. Хочу добавить методы свои и стойства.

Код:
class hvClasses.CDataNode extends XML
{
private var xmlData:XML;
.............
public function byStr(index:String):CDataNode
{
var res:CDataNode = null;
for (var i = 0; i<=xmlData.childNodes.length-1; i++)
{
if (xmlData.childNodes[i].nodeName == index)
{
res = CDataNode(xmlData.childNodes[i]);
break;
}
}
return res;
}
Конструирование, насколько можно судить по результатам последующей загрузки данных, проходит. Результаты я смотрю соответственно так:

Код:
var myNode = new CDataNode();
myNode.ignoreWhite = true;
myNode.loadFromFile("circus.xml");
myNode.onLoad = function(success) {
// trace(myNode);
trace(myNode.status);
trace(myNode.byStr('body'));
// trace('count ' + myNode.byStr('body').byStr('hall').count);
// trace('attrs ' + myNode.byStr('body').byStr('hall').attrCount);
// trace('depth ' + myNode.byStr('body').byStr('hall').depth(true));
}
Но метод byStr мало того, что не работает, при попытке дебажить ваще виснет всё напрочь и схлопывается потом. loadFromFile - тоже переписанный метод, и если его поставить в конец блока - ничего не изменится.