<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://en.bharatpedia.org/w/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3AGadget-twinkleunlink.js</id>
	<title>MediaWiki:Gadget-twinkleunlink.js - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://en.bharatpedia.org/w/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3AGadget-twinkleunlink.js"/>
	<link rel="alternate" type="text/html" href="https://en.bharatpedia.org/w/index.php?title=MediaWiki:Gadget-twinkleunlink.js&amp;action=history"/>
	<updated>2026-08-22T09:37:28Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://en.bharatpedia.org/w/index.php?title=MediaWiki:Gadget-twinkleunlink.js&amp;diff=303792&amp;oldid=prev</id>
		<title>ImportMaster: robot: Import pages to supprt Twinkle</title>
		<link rel="alternate" type="text/html" href="https://en.bharatpedia.org/w/index.php?title=MediaWiki:Gadget-twinkleunlink.js&amp;diff=303792&amp;oldid=prev"/>
		<updated>2021-09-08T15:55:02Z</updated>

		<summary type="html">&lt;p&gt;robot: Import pages to supprt Twinkle&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;// &amp;lt;nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(function($) {&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
 ****************************************&lt;br /&gt;
 *** twinkleunlink.js: Unlink module&lt;br /&gt;
 ****************************************&lt;br /&gt;
 * Mode of invocation:     Tab (&amp;quot;Unlink&amp;quot;)&lt;br /&gt;
 * Active on:              Non-special pages, except Bharatpedia:Sandbox&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
Twinkle.unlink = function twinkleunlink() {&lt;br /&gt;
	if (mw.config.get(&amp;#039;wgNamespaceNumber&amp;#039;) &amp;lt; 0 || mw.config.get(&amp;#039;wgPageName&amp;#039;) === &amp;#039;Bharatpedia:Sandbox&amp;#039; ||&lt;br /&gt;
		// Restrict to extended confirmed users (see #428)&lt;br /&gt;
		(!Morebits.userIsInGroup(&amp;#039;extendedconfirmed&amp;#039;) &amp;amp;&amp;amp; !Morebits.userIsSysop)) {&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
	Twinkle.addPortletLink(Twinkle.unlink.callback, &amp;#039;Unlink&amp;#039;, &amp;#039;tw-unlink&amp;#039;, &amp;#039;Unlink backlinks&amp;#039;);&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
// the parameter is used when invoking unlink from admin speedy&lt;br /&gt;
Twinkle.unlink.callback = function(presetReason) {&lt;br /&gt;
	var fileSpace = mw.config.get(&amp;#039;wgNamespaceNumber&amp;#039;) === 6;&lt;br /&gt;
&lt;br /&gt;
	var Window = new Morebits.simpleWindow(600, 440);&lt;br /&gt;
	Window.setTitle(&amp;#039;Unlink backlinks&amp;#039; + (fileSpace ? &amp;#039; and file usages&amp;#039; : &amp;#039;&amp;#039;));&lt;br /&gt;
	Window.setScriptName(&amp;#039;Twinkle&amp;#039;);&lt;br /&gt;
	Window.addFooterLink(&amp;#039;Unlink prefs&amp;#039;, &amp;#039;BP:TW/PREF#unlink&amp;#039;);&lt;br /&gt;
	Window.addFooterLink(&amp;#039;Twinkle help&amp;#039;, &amp;#039;BP:TW/DOC#unlink&amp;#039;);&lt;br /&gt;
	Window.addFooterLink(&amp;#039;Give feedback&amp;#039;, &amp;#039;WT:TW&amp;#039;);&lt;br /&gt;
&lt;br /&gt;
	var form = new Morebits.quickForm(Twinkle.unlink.callback.evaluate);&lt;br /&gt;
&lt;br /&gt;
	// prepend some documentation: files are commented out, while any&lt;br /&gt;
	// display text is preserved for links (otherwise the link itself is used)&lt;br /&gt;
	var linkTextBefore = Morebits.htmlNode(&amp;#039;code&amp;#039;, &amp;#039;[[&amp;#039; + (fileSpace ? &amp;#039;:&amp;#039; : &amp;#039;&amp;#039;) + Morebits.pageNameNorm + &amp;#039;|link text]]&amp;#039;);&lt;br /&gt;
	var linkTextAfter = Morebits.htmlNode(&amp;#039;code&amp;#039;, &amp;#039;link text&amp;#039;);&lt;br /&gt;
	var linkPlainBefore = Morebits.htmlNode(&amp;#039;code&amp;#039;, &amp;#039;[[&amp;#039; + Morebits.pageNameNorm + &amp;#039;]]&amp;#039;);&lt;br /&gt;
	var linkPlainAfter;&lt;br /&gt;
	if (fileSpace) {&lt;br /&gt;
		linkPlainAfter = Morebits.htmlNode(&amp;#039;code&amp;#039;, &amp;#039;&amp;lt;!-- [[&amp;#039; + Morebits.pageNameNorm + &amp;#039;]] --&amp;gt;&amp;#039;);&lt;br /&gt;
	} else {&lt;br /&gt;
		linkPlainAfter = Morebits.htmlNode(&amp;#039;code&amp;#039;, Morebits.pageNameNorm);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	form.append({&lt;br /&gt;
		type: &amp;#039;div&amp;#039;,&lt;br /&gt;
		style: &amp;#039;margin-bottom: 0.5em&amp;#039;,&lt;br /&gt;
		label: [&lt;br /&gt;
			&amp;#039;This tool allows you to unlink all incoming links (&amp;quot;backlinks&amp;quot;) that point to this page&amp;#039; +&lt;br /&gt;
				(fileSpace ? &amp;#039;, and/or hide all inclusions of this file by wrapping them in &amp;lt;!-- --&amp;gt; comment markup&amp;#039; : &amp;#039;&amp;#039;) +&lt;br /&gt;
				&amp;#039;. For instance, &amp;#039;,&lt;br /&gt;
			linkTextBefore, &amp;#039; would become &amp;#039;, linkTextAfter, &amp;#039; and &amp;#039;,&lt;br /&gt;
			linkPlainBefore, &amp;#039; would become &amp;#039;, linkPlainAfter, &amp;#039;. Use it with caution.&amp;#039;&lt;br /&gt;
		]&lt;br /&gt;
	});&lt;br /&gt;
&lt;br /&gt;
	form.append({&lt;br /&gt;
		type: &amp;#039;input&amp;#039;,&lt;br /&gt;
		name: &amp;#039;reason&amp;#039;,&lt;br /&gt;
		label: &amp;#039;Reason:&amp;#039;,&lt;br /&gt;
		value: presetReason ? presetReason : &amp;#039;&amp;#039;,&lt;br /&gt;
		size: 60&lt;br /&gt;
	});&lt;br /&gt;
&lt;br /&gt;
	var query = {&lt;br /&gt;
		action: &amp;#039;query&amp;#039;,&lt;br /&gt;
		list: &amp;#039;backlinks&amp;#039;,&lt;br /&gt;
		bltitle: mw.config.get(&amp;#039;wgPageName&amp;#039;),&lt;br /&gt;
		bllimit: &amp;#039;max&amp;#039;, // 500 is max for normal users, 5000 for bots and sysops&lt;br /&gt;
		blnamespace: Twinkle.getPref(&amp;#039;unlinkNamespaces&amp;#039;),&lt;br /&gt;
		rawcontinue: true,&lt;br /&gt;
		format: &amp;#039;json&amp;#039;&lt;br /&gt;
	};&lt;br /&gt;
	if (fileSpace) {&lt;br /&gt;
		query.list += &amp;#039;|imageusage&amp;#039;;&lt;br /&gt;
		query.iutitle = query.bltitle;&lt;br /&gt;
		query.iulimit = query.bllimit;&lt;br /&gt;
		query.iunamespace = query.blnamespace;&lt;br /&gt;
	} else {&lt;br /&gt;
		query.blfilterredir = &amp;#039;nonredirects&amp;#039;;&lt;br /&gt;
	}&lt;br /&gt;
	var wikipedia_api = new Morebits.wiki.api(&amp;#039;Grabbing backlinks&amp;#039;, query, Twinkle.unlink.callbacks.display.backlinks);&lt;br /&gt;
	wikipedia_api.params = { form: form, Window: Window, image: fileSpace };&lt;br /&gt;
	wikipedia_api.post();&lt;br /&gt;
&lt;br /&gt;
	var root = document.createElement(&amp;#039;div&amp;#039;);&lt;br /&gt;
	root.style.padding = &amp;#039;15px&amp;#039;;  // just so it doesn&amp;#039;t look broken&lt;br /&gt;
	Morebits.status.init(root);&lt;br /&gt;
	wikipedia_api.statelem.status(&amp;#039;loading...&amp;#039;);&lt;br /&gt;
	Window.setContent(root);&lt;br /&gt;
	Window.display();&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
Twinkle.unlink.callback.evaluate = function twinkleunlinkCallbackEvaluate(event) {&lt;br /&gt;
	var form = event.target;&lt;br /&gt;
	var input = Morebits.quickForm.getInputData(form);&lt;br /&gt;
&lt;br /&gt;
	if (!input.reason) {&lt;br /&gt;
		alert(&amp;#039;You must specify a reason for unlinking.&amp;#039;);&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	input.backlinks = input.backlinks || [];&lt;br /&gt;
	input.imageusage = input.imageusage || [];&lt;br /&gt;
	var pages = Morebits.array.uniq(input.backlinks.concat(input.imageusage));&lt;br /&gt;
	if (!pages.length) {&lt;br /&gt;
		alert(&amp;#039;You must select at least one item to unlink.&amp;#039;);&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	Morebits.simpleWindow.setButtonsEnabled(false);&lt;br /&gt;
	Morebits.status.init(form);&lt;br /&gt;
&lt;br /&gt;
	var unlinker = new Morebits.batchOperation(&amp;#039;Unlinking &amp;#039; + (input.backlinks.length ? &amp;#039;backlinks&amp;#039; +&lt;br /&gt;
			(input.imageusage.length ? &amp;#039; and instances of file usage&amp;#039; : &amp;#039;&amp;#039;) : &amp;#039;instances of file usage&amp;#039;));&lt;br /&gt;
	unlinker.setOption(&amp;#039;preserveIndividualStatusLines&amp;#039;, true);&lt;br /&gt;
	unlinker.setPageList(pages);&lt;br /&gt;
	var params = { reason: input.reason, unlinker: unlinker };&lt;br /&gt;
	unlinker.run(function(pageName) {&lt;br /&gt;
		var wikipedia_page = new Morebits.wiki.page(pageName, &amp;#039;Unlinking in page &amp;quot;&amp;#039; + pageName + &amp;#039;&amp;quot;&amp;#039;);&lt;br /&gt;
		wikipedia_page.setBotEdit(true);  // unlink considered a floody operation&lt;br /&gt;
		wikipedia_page.setCallbackParameters($.extend({&lt;br /&gt;
			doBacklinks: input.backlinks.indexOf(pageName) !== -1,&lt;br /&gt;
			doImageusage: input.imageusage.indexOf(pageName) !== -1&lt;br /&gt;
		}, params));&lt;br /&gt;
		wikipedia_page.load(Twinkle.unlink.callbacks.unlinkBacklinks);&lt;br /&gt;
	});&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
Twinkle.unlink.callbacks = {&lt;br /&gt;
	display: {&lt;br /&gt;
		backlinks: function twinkleunlinkCallbackDisplayBacklinks(apiobj) {&lt;br /&gt;
			var response = apiobj.getResponse();&lt;br /&gt;
			var havecontent = false;&lt;br /&gt;
			var list, namespaces, i;&lt;br /&gt;
&lt;br /&gt;
			if (apiobj.params.image) {&lt;br /&gt;
				var imageusage = response.query.imageusage.sort(Twinkle.sortByNamespace);&lt;br /&gt;
				list = [];&lt;br /&gt;
				for (i = 0; i &amp;lt; imageusage.length; ++i) {&lt;br /&gt;
					// Label made by Twinkle.generateBatchPageLinks&lt;br /&gt;
					list.push({ label: &amp;#039;&amp;#039;, value: imageusage[i].title, checked: true });&lt;br /&gt;
				}&lt;br /&gt;
				if (!list.length) {&lt;br /&gt;
					apiobj.params.form.append({ type: &amp;#039;div&amp;#039;, label: &amp;#039;No instances of file usage found.&amp;#039; });&lt;br /&gt;
				} else {&lt;br /&gt;
					apiobj.params.form.append({ type: &amp;#039;header&amp;#039;, label: &amp;#039;File usage&amp;#039; });&lt;br /&gt;
					namespaces = [];&lt;br /&gt;
					$.each(Twinkle.getPref(&amp;#039;unlinkNamespaces&amp;#039;), function(k, v) {&lt;br /&gt;
						namespaces.push(v === &amp;#039;0&amp;#039; ? &amp;#039;(Article)&amp;#039; : mw.config.get(&amp;#039;wgFormattedNamespaces&amp;#039;)[v]);&lt;br /&gt;
					});&lt;br /&gt;
					apiobj.params.form.append({&lt;br /&gt;
						type: &amp;#039;div&amp;#039;,&lt;br /&gt;
						label: &amp;#039;Selected namespaces: &amp;#039; + namespaces.join(&amp;#039;, &amp;#039;),&lt;br /&gt;
						tooltip: &amp;#039;You can change this with your Twinkle preferences, at [[BP:TWPREFS]]&amp;#039;&lt;br /&gt;
					});&lt;br /&gt;
					if (response[&amp;#039;query-continue&amp;#039;] &amp;amp;&amp;amp; response[&amp;#039;query-continue&amp;#039;].imageusage) {&lt;br /&gt;
						apiobj.params.form.append({&lt;br /&gt;
							type: &amp;#039;div&amp;#039;,&lt;br /&gt;
							label: &amp;#039;First &amp;#039; + mw.language.convertNumber(list.length) + &amp;#039; file usages shown.&amp;#039;&lt;br /&gt;
						});&lt;br /&gt;
					}&lt;br /&gt;
					apiobj.params.form.append({&lt;br /&gt;
						type: &amp;#039;button&amp;#039;,&lt;br /&gt;
						label: &amp;#039;Select All&amp;#039;,&lt;br /&gt;
						event: function(e) {&lt;br /&gt;
							$(Morebits.quickForm.getElements(e.target.form, &amp;#039;imageusage&amp;#039;)).prop(&amp;#039;checked&amp;#039;, true);&lt;br /&gt;
						}&lt;br /&gt;
					});&lt;br /&gt;
					apiobj.params.form.append({&lt;br /&gt;
						type: &amp;#039;button&amp;#039;,&lt;br /&gt;
						label: &amp;#039;Deselect All&amp;#039;,&lt;br /&gt;
						event: function(e) {&lt;br /&gt;
							$(Morebits.quickForm.getElements(e.target.form, &amp;#039;imageusage&amp;#039;)).prop(&amp;#039;checked&amp;#039;, false);&lt;br /&gt;
						}&lt;br /&gt;
					});&lt;br /&gt;
					apiobj.params.form.append({&lt;br /&gt;
						type: &amp;#039;checkbox&amp;#039;,&lt;br /&gt;
						name: &amp;#039;imageusage&amp;#039;,&lt;br /&gt;
						shiftClickSupport: true,&lt;br /&gt;
						list: list&lt;br /&gt;
					});&lt;br /&gt;
					havecontent = true;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
			var backlinks = response.query.backlinks.sort(Twinkle.sortByNamespace);&lt;br /&gt;
			if (backlinks.length &amp;gt; 0) {&lt;br /&gt;
				list = [];&lt;br /&gt;
				for (i = 0; i &amp;lt; backlinks.length; ++i) {&lt;br /&gt;
					// Label made by Twinkle.generateBatchPageLinks&lt;br /&gt;
					list.push({ label: &amp;#039;&amp;#039;, value: backlinks[i].title, checked: true });&lt;br /&gt;
				}&lt;br /&gt;
				apiobj.params.form.append({ type: &amp;#039;header&amp;#039;, label: &amp;#039;Backlinks&amp;#039; });&lt;br /&gt;
				namespaces = [];&lt;br /&gt;
				$.each(Twinkle.getPref(&amp;#039;unlinkNamespaces&amp;#039;), function(k, v) {&lt;br /&gt;
					namespaces.push(v === &amp;#039;0&amp;#039; ? &amp;#039;(Article)&amp;#039; : mw.config.get(&amp;#039;wgFormattedNamespaces&amp;#039;)[v]);&lt;br /&gt;
				});&lt;br /&gt;
				apiobj.params.form.append({&lt;br /&gt;
					type: &amp;#039;div&amp;#039;,&lt;br /&gt;
					label: &amp;#039;Selected namespaces: &amp;#039; + namespaces.join(&amp;#039;, &amp;#039;),&lt;br /&gt;
					tooltip: &amp;#039;You can change this with your Twinkle preferences, linked at the bottom of this Twinkle window&amp;#039;&lt;br /&gt;
				});&lt;br /&gt;
				if (response[&amp;#039;query-continue&amp;#039;] &amp;amp;&amp;amp; response[&amp;#039;query-continue&amp;#039;].backlinks) {&lt;br /&gt;
					apiobj.params.form.append({&lt;br /&gt;
						type: &amp;#039;div&amp;#039;,&lt;br /&gt;
						label: &amp;#039;First &amp;#039; + mw.language.convertNumber(list.length) + &amp;#039; backlinks shown.&amp;#039;&lt;br /&gt;
					});&lt;br /&gt;
				}&lt;br /&gt;
				apiobj.params.form.append({&lt;br /&gt;
					type: &amp;#039;button&amp;#039;,&lt;br /&gt;
					label: &amp;#039;Select All&amp;#039;,&lt;br /&gt;
					event: function(e) {&lt;br /&gt;
						$(Morebits.quickForm.getElements(e.target.form, &amp;#039;backlinks&amp;#039;)).prop(&amp;#039;checked&amp;#039;, true);&lt;br /&gt;
					}&lt;br /&gt;
				});&lt;br /&gt;
				apiobj.params.form.append({&lt;br /&gt;
					type: &amp;#039;button&amp;#039;,&lt;br /&gt;
					label: &amp;#039;Deselect All&amp;#039;,&lt;br /&gt;
					event: function(e) {&lt;br /&gt;
						$(Morebits.quickForm.getElements(e.target.form, &amp;#039;backlinks&amp;#039;)).prop(&amp;#039;checked&amp;#039;, false);&lt;br /&gt;
					}&lt;br /&gt;
				});&lt;br /&gt;
				apiobj.params.form.append({&lt;br /&gt;
					type: &amp;#039;checkbox&amp;#039;,&lt;br /&gt;
					name: &amp;#039;backlinks&amp;#039;,&lt;br /&gt;
					shiftClickSupport: true,&lt;br /&gt;
					list: list&lt;br /&gt;
				});&lt;br /&gt;
				havecontent = true;&lt;br /&gt;
			} else {&lt;br /&gt;
				apiobj.params.form.append({ type: &amp;#039;div&amp;#039;, label: &amp;#039;No backlinks found.&amp;#039; });&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
			if (havecontent) {&lt;br /&gt;
				apiobj.params.form.append({ type: &amp;#039;submit&amp;#039; });&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
			var result = apiobj.params.form.render();&lt;br /&gt;
			apiobj.params.Window.setContent(result);&lt;br /&gt;
&lt;br /&gt;
			Morebits.quickForm.getElements(result, &amp;#039;backlinks&amp;#039;).forEach(Twinkle.generateBatchPageLinks);&lt;br /&gt;
			Morebits.quickForm.getElements(result, &amp;#039;imageusage&amp;#039;).forEach(Twinkle.generateBatchPageLinks);&lt;br /&gt;
&lt;br /&gt;
		}&lt;br /&gt;
	},&lt;br /&gt;
	unlinkBacklinks: function twinkleunlinkCallbackUnlinkBacklinks(pageobj) {&lt;br /&gt;
		var oldtext = pageobj.getPageText();&lt;br /&gt;
		var params = pageobj.getCallbackParameters();&lt;br /&gt;
		var wikiPage = new Morebits.wikitext.page(oldtext);&lt;br /&gt;
&lt;br /&gt;
		var summaryText = &amp;#039;&amp;#039;, warningString = false;&lt;br /&gt;
		var text;&lt;br /&gt;
&lt;br /&gt;
		// remove image usages&lt;br /&gt;
		if (params.doImageusage) {&lt;br /&gt;
			text = wikiPage.commentOutImage(mw.config.get(&amp;#039;wgTitle&amp;#039;), &amp;#039;Commented out&amp;#039;).getText();&lt;br /&gt;
			// did we actually make any changes?&lt;br /&gt;
			if (text === oldtext) {&lt;br /&gt;
				warningString = &amp;#039;file usages&amp;#039;;&lt;br /&gt;
			} else {&lt;br /&gt;
				summaryText = &amp;#039;Commenting out use(s) of file&amp;#039;;&lt;br /&gt;
				oldtext = text;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		// remove backlinks&lt;br /&gt;
		if (params.doBacklinks) {&lt;br /&gt;
			text = wikiPage.removeLink(Morebits.pageNameNorm).getText();&lt;br /&gt;
			// did we actually make any changes?&lt;br /&gt;
			if (text === oldtext) {&lt;br /&gt;
				warningString = warningString ? &amp;#039;backlinks or file usages&amp;#039; : &amp;#039;backlinks&amp;#039;;&lt;br /&gt;
			} else {&lt;br /&gt;
				summaryText = (summaryText ? summaryText + &amp;#039; / &amp;#039; : &amp;#039;&amp;#039;) + &amp;#039;Removing link(s) to&amp;#039;;&lt;br /&gt;
				oldtext = text;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		if (warningString) {&lt;br /&gt;
			// nothing to do!&lt;br /&gt;
			pageobj.getStatusElement().error(&amp;quot;Didn&amp;#039;t find any &amp;quot; + warningString + &amp;#039; on the page.&amp;#039;);&lt;br /&gt;
			params.unlinker.workerFailure(pageobj);&lt;br /&gt;
			return;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		pageobj.setPageText(text);&lt;br /&gt;
		pageobj.setEditSummary(summaryText + &amp;#039; &amp;quot;&amp;#039; + Morebits.pageNameNorm + &amp;#039;&amp;quot;: &amp;#039; + params.reason + &amp;#039;.&amp;#039;);&lt;br /&gt;
		pageobj.setChangeTags(Twinkle.changeTags);&lt;br /&gt;
		pageobj.setCreateOption(&amp;#039;nocreate&amp;#039;);&lt;br /&gt;
		pageobj.save(params.unlinker.workerSuccess, params.unlinker.workerFailure);&lt;br /&gt;
	}&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
Twinkle.addInitCallback(Twinkle.unlink, &amp;#039;unlink&amp;#039;);&lt;br /&gt;
})(jQuery);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
// &amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>ImportMaster</name></author>
	</entry>
</feed>