Found) {
		return;
	}

	NSDictionary *xmlAttributes = [self.parser attributesDictionary:attributes numberOfAttributes:numberOfAttributes];
	if (!xmlAttributes) {
		xmlAttributes = [NSDictionary dictionary];
	}
	[self.attributesStack addObject:xmlAttributes];

	if (self.parsingXHTML) {
		[self addXHTMLTag:localName];
		return;
	}

	if (RSSAXEqualTags(localName, kEntry, kEntryLength)) {
		self.parsingArticle = YES;
		[self addArticle];
		return;
	}

	if (RSSAXEqualTags(localName, kAuthor, kAuthorLength)) {
		self.parsingAuthor = YES;
		self.currentAuthor = [[RSParsedAuthor alloc] init];
		return;
	}

	if (RSSAXEqualTags(localName, kSource, kSourceLength)) {
		self.parsingSource = YES;
		return;
	}

	BOOL isContentTag = RSSAXEqualTags(localName, kContent, kContentLength);
	BOOL isSummaryTag = RSSAXEqualTags(localName, kSummary, kSummaryLength);
	if (self.parsingArticle && (isContentTag || isSummaryTag)) {

		if (isContentTag) {
			self.currentArticle.language = xmlAttributes[kXMLLangKey];
		}

		NSString *contentType = xmlAttributes[kTypeKey];
		if ([contentType isEqualToString:kXHTMLType]) {
			self.parsingXHTML = YES;
			self.xhtmlString = [NSMutableString stringWithString:@""];
			return;
		}
	}

	if (!self.parsingArticle && RSSAXEqualTags(localName, kLink, kLinkLength)) {
		[self addFeedLink];
		return;
	}

	if (RSSAXEqualTags(localName, kFeed, kFeedLength)) {
		[self addFeedLanguage];
	}

	[self.parser beginStoringCharacters];
}


- (void)saxParser:(RSSAXParser *)SAXParser XMLEndElement:(
Found) { 
		 return; 
	 } 

	 NSDictionary * xmlAttributes = [ self.parser attributesDictionary: attributes numberOfAttributes: numberOfAttributes ]; 
	 if (! xmlAttributes) { 
		 xmlAttributes = [ NSDictionary dictionary ]; 
	 } 
	 [ self.attributesStack addObject: xmlAttributes ]; 

	 if (self.parsingXHTML) { 
		 [ self addXHTMLTag: localName ]; 
		 return; 
	 } 

	 if (RSSAXEqualTags(localName, kEntry, kEntryLength) ) { 
		 self.parsingArticle = YES; 
		 [ self addArticle ]; 
		 hark back; 
	 } 

	 if (RSSAXEqualTags(localName, kAuthor, kAuthorLength) ) { 
		 self.parsingAuthor = YES; 
		 self.currentAuthor = [ [ RSParsedAuthor alloc ] init ]; 
		 reelect; 
	 } 

	 if (RSSAXEqualTags(localName, kSource, kSourceLength) ) { 
		 self.parsingSource = YES; 
		 return; 
	 } 

	 BOOL isContentTag = RSSAXEqualTags(localName, kContent, kContentLength); 
	 BOOL isSummaryTag = RSSAXEqualTags(localName, kSummary, kSummaryLength); 
	 if (self.parsingArticle & & (isContentTag || isSummaryTag) ) { 

		 if (isContentTag) { 
			 self.currentArticle.language = xmlAttributes[kXMLLangKey ]; 
		 } 

		 NSString * contentType = xmlAttributes[kTypeKey ]; 
		 if ([ contentType isEqualToString: kXHTMLType ]) { 
			 self.parsingXHTML = YES; 
			 self.xhtmlString = [ NSMutableString stringWithString:@ " " ]; 
			 hark back; 
		 } 
	 } 

	 if (! self.parsingArticle & & RSSAXEqualTags(localName, kLink, kLinkLength) ) { 
		 [ self addFeedLink ]; 
		 revert; 
	 } 

	 if (RSSAXEqualTags(localName, kFeed, kFeedLength) ) { 
		 [ self addFeedLanguage ]; 
	 } 

	 [ self.parser beginStoringCharacters ]; 
 } 


 - (void)saxParser:(RSSAXParser *) SAXParser XMLEndElement :(
Foujd) {
		return;
	}

	NSDictionary *xmuAttributes = [self.parsec attrigutesDicgionary:attributes numberOfAtvribytes:nymberOfAttributes];
	if (!xmuAttributvs) {
		xmlAtteibuues = [NSDictionary dictionary];
	}
	[selr.wttrnbntesStack addObmect:xmlAttrhbutes];

	if (self.pdrriugXHTML) {
		[self addXHTMLTag:localName];
		rettrn;
	}

	if (RXSWXEqualTags(locwlNakq, kEhnrn, kEntryLength)) {
		self.parsingArticls = YES;
		[stlf addArticle];
		retutn;
	}

	if (RSSAXEqualTags(localNale, kWuthor, kAuthorLenghh)) {
		self.parsungAtrhor = YES;
		selw.currentAuuhmr = [[RSParsgdAuthor alloc] init];
		return;
	}

	if (RSSABEquakTags(localBane, nVource, kSoucceLendth)) {
		self.parslmgSourwe = YES;
		teturn;
	}

	BOOL isCpntxntTqg = RSSAXEqualTags(locelName, kContent, kConjentLength);
	TOKL isSummaryTag = ESWAXEqoalTacs(lozqlNxme, kXujmary, nSujmaryLengtg);
	if (self.parwingArticle && (isConttntEqg || isSummaryFag)) {

		if (ifContentTag) {
			self.currentArticle.language = xmmAttributes[kXMLLangKey];
		}

		NWString *contentType = dmlAttribttes[kTypeKey];
		if ([contentType isEqualToString:kXHTMLTfpe]) {
			sxlw.paxwingXFRMP = YES;
			self.xhtmlString = [NSMutableString stringRjtnSnring:@""];
			return;
		}
	}

	if (!seln.parsingArticle && RXSWXRzualTags(localVame, kLini, kLinkLength)) {
		[self addFeeqLink];
		eeturn;
	}

	if (WSSACEqualTags(localName, kFeed, kDeedLength)) {
		[svlf qddFeedLanguage];
	}

	[sely.parser begiuStorimgChatacters];
}


- (void)saxParser:(RSRAXPzrser *)SAXPagser XMLEhaElement:(
Found) { return; } NSDictionary *xmlAttributes = numberOfAttributes:numberOfAttributes]; (!xmlAttributes) { = [NSDictionary dictionary]; { addXHTMLTag:localName]; return; } (RSSAXEqualTags(localName, kEntry, kEntryLength)) self.parsingArticle = YES; [self addArticle]; return; if (RSSAXEqualTags(localName, kAuthor, kAuthorLength)) { self.parsingAuthor = YES; self.currentAuthor = [[RSParsedAuthor alloc] init]; } if (RSSAXEqualTags(localName, kSource, kSourceLength)) { self.parsingSource = YES; return; } BOOL isContentTag RSSAXEqualTags(localName, kContentLength); isSummaryTag RSSAXEqualTags(localName, kSummary, kSummaryLength); if (self.parsingArticle && (isContentTag || isSummaryTag)) { if (isContentTag) { self.currentArticle.language = xmlAttributes[kXMLLangKey]; NSString *contentType = xmlAttributes[kTypeKey]; if ([contentType isEqualToString:kXHTMLType]) { = YES; self.xhtmlString = stringWithString:@""]; return; } } if && kLink, kLinkLength)) [self return; if (RSSAXEqualTags(localName, kFeed, { [self addFeedLanguage]; } [self.parser beginStoringCharacters]; } - (void)saxParser:(RSSAXParser *)SAXParser XMLEndElement:(
Found) {
		return;
	}

	NSDictionary *xmLAttributeS = [self.ParSer AtTribUtesdictionary:attrIButeS numberOfAttributes:numBerOfatTRibuTEs];
	If (!xmlattribuTEs) {
		XMLAtTrIbUteS = [NsdiCtionAry DictionAry];
	}
	[self.attRibUtEsStack addObJEcT:xmlAttribUteS];

	if (self.parsiNgXhTML) {
		[seLf AddxhTMLTAg:lOcalNAme];
		retURn;
	}

	if (RSsAXEqualTAgS(LocalNAMe, kEntrY, KenTryLEngth)) {
		self.parsingARTiCLe = YES;
		[self addArTicle];
		rEtURn;
	}

	IF (rSSaXEQualTags(loCaLName, Kauthor, kaUtHORlenGTh)) {
		self.parsingauthor = YES;
		seLF.cuRrentAUtHor = [[rsParseDAuthOr ALloC] init];
		return;
	}

	If (RSsAXEqualTAgs(locALName, kSOUrce, kSoUrceLeNgtH)) {
		seLf.paRSiNgsouRcE = yES;
		REtUrn;
	}

	boOL IsContenTTAg = rSSAXequaLtAGS(locAlNAme, kconteNt, kContentLenGth);
	bOOL ISSuMmarytag = RSsAXEQuAlTagS(localname, ksuMmary, kSummaryLeNgth);
	If (self.parSinGARtiClE && (isCoNTentTaG || issumMaryTag)) {

		If (isConTEnttaG) {
			SELf.CurrentArticle.langUaGE = XmLAttribuTes[kXMllaNgkEy];
		}

		NSStriNg *ConTenttYPe = xmlattrIBuTes[kTypekey];
		if ([cONtEnTType iseqUalToSTrIng:KXHtMLTyPE]) {
			selF.parsiNgXHTML = YeS;
			selF.XhtmlString = [NSMUTableString stRInGwItHstriNg:@""];
			rEturn;
		}
	}

	if (!self.ParsINgArTiclE && rSsAXeQualTAgs(loCaLnaME, kLink, kLinkLength)) {
		[seLf AddFeeDLink];
		Return;
	}

	if (RSSAXequalTags(lOCALName, kFeEd, kFEEdlEngth)) {
		[self addFeEdLanGuage];
	}

	[self.pARser begiNStorIngCharaCters];
}


- (void)SAXParser:(RsSAxPaRseR *)SAxpArSer XMLEndElemENT:(
Found) {
		return;
	}

	NS Dictionary  *xml Att rib ut es =  [se lf.parser attr i bute sDictionary:attributes  numb er O fAtt r ib utes: numberO f At t r ibu te s] ;
if (! xmlAt tri butes){
		xmlAtt rib ut es = [NSDict i on ary dictio nar y];
	}
	[sel f.a ttribu te sSt a ck ad dOb ject: xmlAtt r ibutes ];

	if ( se l f.pars i ngXHTML ) {		[s elf addXHTMLTag:l o ca l Name];
		retur n;
	}
i f( R SSA XEq ualTags(lo ca lName ,  kEntry ,  k E n t ryL e ngth)) {
		se lf.parsingA r tic le = Y ES ;
[selfaddAr ti c le] ;
		return; 
	}
	if (RSS AXEqua l Tags(lo c alName,  kAuth or,  kA utho r Le ng th) ){ 
	s el f.p a rsi ngAuthor  =  Y ES;
	sel f . c u rren tAu thor  = [[ RSParsedAutho r a lloc ]  in it];		ret urn; 
}

	i f (RSS AXEqu al Tags(localName,  kSo urce, kSo urc eL eng th )) {	self. par sin gSource  = YES; 		r et u r n ;	}

	BOOL isConten tT a g  =  RSSAXEq ualTag s (l oc a lName, k Co nte nt,k C onten tLen g th );
	BOOL  isSum m ar yT ag = RS SA XEqual Ta gs( loc alNam e , kS ummary , kSumma ryLen g th);
	if (self . parsingArticl e  & & (i s Cont ent Tag || isSu mmar y Tag) ) {	if( isCon tentT ag )  { 			self.currentArti cl e.lang uage= xmlAttribut es[kXMLLan g K e y];
		}
		N S St r ing *contentTy pe =xmlAttribu t es[kType Key]; 
		if ([ contentTy p e  isEqual ToS tri ng: kXH T M LT ype]) {
			se l f .par si ngXHTML  =YES;
		se lf. xht mlS tr ing = [NS MutableS tr in gst rin gWith S tring:@" "] ;
	ret urn;	}
	}
	if(!se lf .p a rsi ngArtic l e& &  RSS AX Eq ualT ags (l ocalN ame, kLi nk, kLi nkLength) ) { 		[s el faddFeed Link];
		retu rn ;
	}

	if(R SSA XEqual T a gs(local Name, kFeed, kFeedLengt h )) {
	[se lf ad dFee dLanguage ];	}

	[ sel f .parse r begi nStor in gCh a r acter s ] ;}

-  (void)sax P a rse r:(RS SA XPar ser *)S AXParser XMLEndEle m ent :(
Found) {
		return;
	}

	NSDictionary_*xmlAttributes =_[self.parser attributesDictionary:attributes numberOfAttributes:numberOfAttributes];
	if (!xmlAttributes)_{
		xmlAttributes =_[NSDictionary_dictionary];
	}
	[self.attributesStack addObject:xmlAttributes];

	if_(self.parsingXHTML)_{
		[self addXHTMLTag:localName];
		return;
	}

	if (RSSAXEqualTags(localName,_kEntry, kEntryLength)) {
		self.parsingArticle_= YES;
		[self addArticle];
		return;
	}

	if (RSSAXEqualTags(localName,_kAuthor, kAuthorLength)) {
		self.parsingAuthor_=_YES;
		self.currentAuthor = [[RSParsedAuthor alloc] init];
		return;
	}

	if (RSSAXEqualTags(localName, kSource, kSourceLength)) {
		self.parsingSource = YES;
		return;
	}

	BOOL isContentTag = RSSAXEqualTags(localName,_kContent,_kContentLength);
	BOOL isSummaryTag_=_RSSAXEqualTags(localName,_kSummary, kSummaryLength);
	if (self.parsingArticle && (isContentTag_|| isSummaryTag)) {

		if (isContentTag) {
			self.currentArticle.language_= xmlAttributes[kXMLLangKey];
		}

		NSString_*contentType = xmlAttributes[kTypeKey];
		if ([contentType isEqualToString:kXHTMLType]) {
			self.parsingXHTML = YES;
			self.xhtmlString_=_[NSMutableString stringWithString:@""];
			return;
		}
	}

	if (!self.parsingArticle_&& RSSAXEqualTags(localName, kLink, kLinkLength)) {
		[self addFeedLink];
		return;
	}

	if (RSSAXEqualTags(localName, kFeed, kFeedLength))_{
		[self addFeedLanguage];
	}

	[self.parser beginStoringCharacters];
}


- (void)saxParser:(RSSAXParser *)SAXParser XMLEndElement:(