Jump to content

User:Wugapodes/CapricornDev.js

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Wugapodes (talk | contribs) at 23:45, 1 July 2019 (copying from User:Wugapodes/Capricorn.js see attribution there). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)
Note: After saving, you have to bypass your browser's cache to see the changes. Google Chrome, Firefox, Microsoft Edge and Safari: Hold down the ⇧ Shift key and click the Reload toolbar button. For details and instructions about other browsers, see Wikipedia:Bypass your cache.
// This is a modified version of [[User:Sam Sailor/Scripts/Sagittarius+.js]] ([[Special:PermaLink/899463476]])
// Docs: [[User:Wugapodes/Capricorn]]

/*jshint undef:true, latedef:true, shadow:true, loopfunc:true, scripturl:true, undef:true */
/*globals jQuery, mw, importStylesheet */
mw.loader.using(['jquery.suggestions', 'mediawiki.api', 'mediawiki.Title', 'mediawiki.action.view.redirectPage'], function () { // <nowiki>
'use strict';

if (mw.config.get('wgNamespaceNumber') < 0)
	return;

importStylesheet('User:Wugapodes/Capricorn.css');


function normaliseAnchor(anchor) {
	function encodeCodePoint(c) {
		if (c === 0x20)
			return '_';
		if (c < 0x80) {
			return '.' + c.toString(16).toUpperCase();
		} else if (c < 0x800) {
			return '.' + (0xc0 |  (c >>>  6)        ).toString(16).toUpperCase() +
				'.' + (0x80 | ( c         & 0x3f)).toString(16).toUpperCase();
		} else if (c < 0x10000) {
			return '.' + (0xe0 |  (c >>> 12)        ).toString(16).toUpperCase() +
				'.' + (0x80 | ((c >>>  6) & 0x3f)).toString(16).toUpperCase() +
				'.' + (0x80 | ( c         & 0x3f)).toString(16).toUpperCase();
		} else if (c < 0x200000) {
			return '.' + (0xf0 |  (c >>> 18)        ).toString(16).toUpperCase() +
				'.' + (0x80 | ((c >>> 12) & 0x3f)).toString(16).toUpperCase() +
				'.' + (0x80 | ((c >>>  6) & 0x3f)).toString(16).toUpperCase() +
				'.' + (0x80 | ( c         & 0x3f)).toString(16).toUpperCase();
		} else if (c < 0x4000000) {
			return '.' + (0xf8 |  (c >>> 24)        ).toString(16).toUpperCase() +
				'.' + (0x80 | ((c >>> 18) & 0x3f)).toString(16).toUpperCase() +
				'.' + (0x80 | ((c >>> 12) & 0x3f)).toString(16).toUpperCase() +
				'.' + (0x80 | ((c >>>  6) & 0x3f)).toString(16).toUpperCase() +
				'.' + (0x80 | ( c         & 0x3f)).toString(16).toUpperCase();
		} else if (c < 0x80000000) {
			return '.' + (0xfc |  (c >>> 30)        ).toString(16).toUpperCase() +
				'.' + (0x80 | ((c >>> 24) & 0x3f)).toString(16).toUpperCase() +
				'.' + (0x80 | ((c >>> 18) & 0x3f)).toString(16).toUpperCase() +
				'.' + (0x80 | ((c >>> 12) & 0x3f)).toString(16).toUpperCase() +
				'.' + (0x80 | ((c >>>  6) & 0x3f)).toString(16).toUpperCase() +
				'.' + (0x80 | ( c         & 0x3f)).toString(16).toUpperCase();
		}
	}

	// "." is not escaped!
	return anchor.replace(/[^0-9A-Za-z_:\.]/g, function (m) { /* [\ud800-\udbff][\udc00-\dfff]| */
		if (m.length === 2) { // surrogate pair
			return encodeCodePoint((m.charCodeAt(0) & 0x3ff) << 10 | m.charCodeAt(1) & 0x3ff);
		} else {
			return encodeCodePoint(m.charCodeAt(0));
		}
	});
}

function normaliseTitle(title) {
	try {
		var t = new mw.Title(title);
		return t.getPrefixedText();
	} catch (e) {
		return null;
	}
}

function el(tag, child, attr, events) {
	var node = document.createElement(tag);
 
	if (child) {
		if ((typeof child === 'string') || (typeof child.length !== 'number'))
			child = [child];
		for (var i = 0; i < child.length; ++i) {
			var ch = child[i];
			if ((ch === void(null)) || (ch === null))
				continue;
			else if (typeof ch !== 'object')
				ch = document.createTextNode(String(ch));
			node.appendChild(ch);
		}
	}

	if (attr) for (var key in attr) {
		if ((attr[key] === void(0)) || (attr[key] === null))
			continue;
		node.setAttribute(key, String(attr[key]));
	}

	if (events) for (var key in events) {
		var handler = events[key];
		if ((key === 'input') && (window.oninput === void(0))) {
			key = 'change';
		}
		node.addEventListener(key, handler, false);
	}

	return node;
}

function link(child, href, attr, ev) {
	attr = attr || {};
	ev = ev || {};
	if (typeof attr === 'string') {
		attr = { "title": attr };
	}
	if (typeof href === 'string')
		attr.href = href;
	else {
		attr.href = 'javascript:void(null);';
		ev.click = href;
	}
	return el('a', child, attr, ev);
}

var templateGroups = {
	"fromabbreviationcapitalisationandgrammar": "From – abbreviation, capitalisation, and grammar",
	"frompartsofspeach": "From parts of speach",
	"fromspelling": "From – spelling",
	"fromalternativenamesgeneral": "From alternative names, general",
	"fromalternativenamesgeography": "From alternative names, geography",
	"fromalternativenamespeople": "From alternative names, people",
	"fromalternativenamesscientific": "From alternative names, scientific",
	"fromalternativenamestechnical": "From alternative names, technical",
	"fromcomics": "From comics",
	"fromdisambiguations": "From disambiguations",
	"fromfiction": "From fiction",
	"fromisocodes": "From ISO codes",
	"fromrelatedinfo": "From related info",
	"fromrelatedpeople": "From related people",
	"fromtransportation": "From – transportation",
	"frommergersduplicatesandmoves": "From mergers, duplicates, and moves",
	"fromnavigation": "From – navigation",
	"togrammarpunctuationandspelling": "To – grammar, punctuation, and spelling",
	"toalternativenames": "To alternative names",
	"tocomics": "To comics",
	"tomiscellaneous": "To – miscellaneous",
	"tonamespaces": "To namespaces",
	"misc": "Miscellaneous"
};

var templateAliases = {
	"R adr": "R avoided double redirect",
	"R double redirect avoided": "R avoided double redirect",
	"Radr": "R avoided double redirect",
	"Redirect avoided double redirect": "R avoided double redirect",
	
	"R acronym": "R from acronym",
	"Redirect from acronym": "R from acronym",
	"R acr": "R from acronym",
	"Redirect acr": "R from acronym",
	"Redirect acronym": "R from acronym",
	"R from ac": "R from acronym",
	"Redirect from ac": "R from acronym",
	"R from acr": "R from acronym",
	"Redirect from acr": "R from acronym",
	
	"Redirect to acronym": "R to acronym",
	
	"Redirect from adjective": "R from adjective",
	"R from adjective phrase": "R from adjective",
	"Redirect from adjective phrase": "R from adjective",
	"R from adj": "R from adjective",
	"Redirect from adj": "R from adjective",
	"R adj": "R from adjective",
	"Redirect adj": "R from adjective",
	"R aj": "R from adjective",
	"Redirect aj": "R from adjective",
	"R from adjectival form": "R from adjective",
	"R adjective": "R from adjective",
	
	"R adv": "R from adverb",
	"Redirect from adverb": "R from adverb",
	
	"R airport": "R from airport code",
	"Redirect from airport code": "R from airport code",
	
	"R from an album": "R from album",
	"R from EP": "R from album",
	"R to song": "R from album",
	"Redirect from album": "R from album",
	"Redirect from EP": "R from album",
	
	"R alt lang": "R from alternative language",
	"R alter lang": "R from alternative language",
	"R from alt lang": "R from alternative language",
	"R from alt langs": "R from alternative language",
	"R from alt language": "R from alternative language",
	"R from alt languages": "R from alternative language",
	"R from alternate language": "R from alternative language",
	"R from alternative langs": "R from alternative language",
	"R from alternative languages": "R from alternative language",
	"R from another language": "R from alternative language",
	"R from foreign": "R from alternative language",
	"R from foreign language": "R from alternative language",
	"R from Foreign name": "R from alternative language",
	"R from foreign name": "R from alternative language",
	"R from lang": "R from alternative language",
	"R from language": "R from alternative language",
	"R from non-English name": "R from alternative language",
	"R from original language": "R from alternative language",
	"R from other language": "R from alternative language",
	"R from other languages": "R from alternative language",
	"R from translation": "R from alternative language",
	"R in other languages": "R from alternative language",
	"R lang": "R from alternative language",
	"R to alt language": "R from alternative language",
	"R to alternative language": "R from alternative language",
	"R to English": "R from alternative language",
	"R to non-English name": "R from alternative language",
	"R to other language": "R from alternative language",
	"R-alter-lang": "R from alternative language",
	"Ralterlang": "R from alternative language",
	"Redirect from alternative language": "R from alternative language",
	"Redirect from alternative languages": "R from alternative language",
	"Redirect from another language": "R from alternative language",
	"Redirect from foreign language": "R from alternative language",
	"Redirect from foreign name": "R from alternative language",
	"Redirect from other language": "R from alternative language",
	
	"R alt": "R from alternative name",
	"R alt name": "R from alternative name",
	"R alternate": "R from alternative name",
	"R alternate name": "R from alternative name",
	"R alternative": "R from alternative name",
	"R alternative name": "R from alternative name",
	"R an": "R from alternative name",
	"R at": "R from alternative name",
	"R for alternative name": "R from alternative name",
	"R from alias": "R from alternative name",
	"R from alt name": "R from alternative name",
	"R from alt title": "R from alternative name",
	"R from alternate name": "R from alternative name",
	"R from alternate name and others": "R from alternative name",
	"R from alternate names": "R from alternative name",
	"R from alternate title": "R from alternative name",
	"R from alternative": "R from alternative name",
	"R from alternative form": "R from alternative name",
	"R from Alternative Name": "R from alternative name",
	"R from Alternative name": "R from alternative name",
	"R from alternative names": "R from alternative name",
	"R from alternative term": "R from alternative name",
	"R from alternative title": "R from alternative name",
	"R from an": "R from alternative name",
	"R from an alternate name": "R from alternative name",
	"R from another name": "R from alternative name",
	"R from mantra": "R from alternative name",
	"R from native name": "R from alternative name",
	"R from nick": "R from alternative name",
	"R from nickname": "R from alternative name",
	"R from official name": "R from alternative name",
	"R from other name": "R from alternative name",
	"R from popular name": "R from alternative name",
	"R from slang name": "R from alternative name",
	"R from slang term": "R from alternative name",
	"R from slang title": "R from alternative name",
	"R from title": "R from alternative name",
	"R nick": "R from alternative name",
	"R other": "R from alternative name",
	"R to alternate": "R from alternative name",
	"R to alternate name": "R from alternative name",
	"R to alternate title": "R from alternative name",
	"R to alternative name": "R from alternative name",
	"R to alternative title": "R from alternative name",
	"R to nickname": "R from alternative name",
	"R to other name": "R from alternative name",
	"R to pseudonym": "R from alternative name",
	"R to stage name": "R from alternative name",
	"Redirect alternative": "R from alternative name",
	"Redirect form alternative name": "R from alternative name",
	"Redirect form alternative transliteration": "R from alternative name",
	"Redirect form married name": "R from alternative name",
	"Redirect form pen-name": "R from alternative name",
	"Redirect form stage name": "R from alternative name",
	"Redirect from alias": "R from alternative name",
	"Redirect from alternate name": "R from alternative name",
	"Redirect from alternate title": "R from alternative name",
	"Redirect from alternative name": "R from alternative name",
	"Redirect from alternative title": "R from alternative name",
	"Redirect from an": "R from alternative name",
	"Redirect from homotypic synonym": "R from alternative name",
	"Redirect from hoterotypic synonym": "R from alternative name",
	"Redirect from local name": "R from alternative name",
	"Redirect from maiden name": "R from alternative name",
	"Redirect from native name": "R from alternative name",
	"Redirect from native place name": "R from alternative name",
	"Redirect from nick-name": "R from alternative name",
	"Redirect from nickname": "R from alternative name",
	"Redirect from nom-de-guerre": "R from alternative name",
	"Redirect from other name": "R from alternative name",
	"Redirect from other part of speech": "R from alternative name",
	"Redirect from popular name": "R from alternative name",
	"Redirect from single name": "R from alternative name",
	"Redirect from slang": "R from alternative name",
	"Redirect from slang name": "R from alternative name",
	"Redirect from slang term": "R from alternative name",
	"Redirect from slang title": "R from alternative name",
	"Redirect from stylisation": "R from alternative name",
	"Redirect from unmarried name": "R from alternative name",
	"Redirect to alternative name": "R from alternative name",
	"Redirect to assumed name": "R from alternative name",
	"Redirect to married name": "R from alternative name",
	"Redirect to name without title": "R from alternative name",
	"Redirect to nickname": "R from alternative name",
	"Redirect to pen-name": "R from alternative name",
	"Redirect to pseudonym": "R from alternative name",
	"Redirect to psuedonym": "R from alternative name",
	"Redirect to stage name": "R from alternative name",
	"Redirect to stage-name": "R from alternative name",
	"Redirect to transcribed name": "R from alternative name",
	"Redirect to transcription": "R from alternative name",
	
	"R asn": "R from alternative scientific name",
	"R from another scientific name": "R from alternative scientific name",
	"R from taxonomic synonym": "R from alternative scientific name",
	"R to alternative scientific name": "R from alternative scientific name",
	"Raltsci": "R from alternative scientific name",
	"Redirect asn": "R from alternative scientific name",
	"Redirect from alternative scientific name": "R from alternative scientific name",
	"Redirect from biological synonym": "R from alternative scientific name",
	"Redirect from taxonomic synonym": "R from alternative scientific name",
	"Redirect to alternative scientific name": "R from alternative scientific name",
	
	"R from alt spelling": "R from alternative spelling",
	"R from spelling": "R from alternative spelling",
	"R from alternate spelling": "R from alternative spelling",
	"R from another spelling": "R from alternative spelling",
	"R from alternative spellings": "R from alternative spelling",
	"R from other spelling": "R from alternative spelling",
	"R spell": "R from alternative spelling",
	"R from different spelling": "R from alternative spelling",
	"Redirect from alternative spelling": "R from alternative spelling",
	"R from unofficial spelling": "R from alternative spelling",
	"R alternative spelling": "R from alternative spelling",
	"R spelling": "R from alternative spelling",
	"R to alternative spelling": "R from alternative spelling",
	"R to alt spelling": "R from alternative spelling",
	"R to alternate spelling": "R from alternative spelling",
	"R to another spelling": "R from alternative spelling",
	"R to alternative spellings": "R from alternative spelling",
	"R to different spelling": "R from alternative spelling",
	"Redirect to alternative spelling": "R from alternative spelling",
	"R to unofficial spelling": "R from alternative spelling",
	"R from UK spelling": "R from alternative spelling",
	"Redirect from alt spelling": "R from alternative spelling",
	"R as": "R from alternative spelling",
	"Redirect as": "R from alternative spelling",
	"R from anglicization": "R from alternative spelling",
	"R to British": "R from alternative spelling",
	"R to American": "R from alternative spelling",
	"Redirect from UK spelling": "R from alternative spelling",
	"R from obsolete spelling": "R from alternative spelling",

	"Redirect from alternative transliteration": "R from alternative transliteration",
	"R altrans": "R from alternative transliteration",
	"R from transliteration": "R from alternative transliteration",
	"R from alt transliteration": "R from alternative transliteration",
	"R from alternate transliteration": "R from alternative transliteration",
	"Redirect from transliteration": "R from alternative transliteration",
	"R from alternative romanisation": "R from alternative transliteration",
	"R from other transliteration": "R from alternative transliteration",
	"R from another transliteration": "R from alternative transliteration",
	
	"R ambig": "R from ambiguous term",
	"R ambiguous": "R from ambiguous term",
	"R from ambig": "R from ambiguous term",
	"R from ambiguous": "R from ambiguous term",
	"R from ambiguous name": "R from ambiguous term",
	"R from ambiguous page": "R from ambiguous term",
	"R from ambiguous page name": "R from ambiguous term",
	"R from ambiguous title": "R from ambiguous term",
	"R from ambiguous word": "R from ambiguous term",
	"Redirect from ambig": "R from ambiguous term",
	"Redirect from ambiguous page": "R from ambiguous term",
	"Redirect from ambiguous term": "R from ambiguous term",
	"Redirect from ambiguous title": "R from ambiguous term",
	
	"R from American": "R from American English",
	"Redirect from American English": "R from American English",
	"R from AE": "R from American English",
	"R from American spelling": "R from American English",
	
	"RPT": "R to anchor",
	"R anchor": "R to anchor",
	"R from plausible term": "R to anchor",
	"R to Anchor": "R to anchor",
	"R to anchors": "R to anchor",
	"R to embedded anchor": "R to anchor",
	"R to glossary entry": "R to anchor",
	"Redirect to anchor": "R to anchor",
	"Rta": "R to anchor",
	
	"R animal": "R from animal",
	"Redirect from animal": "R from animal",
	
	"R to anthroponymy": "R to anthroponymy page",
	
	"R ant": "R from antonym",
	"R from opposite": "R from antonym",
	"Redirect from antonym": "R from antonym",
	
	"Redirect from ASCII": "R from ASCII-only",
	"R fa": "R from ASCII-only",
	"R from ASCII": "R from ASCII-only",
	"Redirect from ASCII-only": "R from ASCII-only",
	
	"R ta": "R to ASCII-only",
	"R to ASCII": "R to ASCII-only",
	"Redirect to ASCII-only": "R to ASCII-only",
	
	"R atc": "R from ATC code",
	"Redirect from ATC code": "R from ATC code",
	
	"R atcvet": "R from ATCvet code",
	"Redirect from ATCvet code": "R from ATCvet code",
	
	"R from maiden name": "R from birth name",
	"R nee": "R from birth name",
	"R to married name": "R from birth name",
	
	"R from Bluebook": "R from Bluebook abbreviation",
	"R from bluebook": "R from Bluebook abbreviation",
	
	"From books": "R from book",
	"R book": "R from book",
	"R from a book": "R from book",
	"Redirect from a book": "R from book",
	"Redirect from book": "R from book",
	
	"R brand": "R from brand name",
	"R from brand": "R from brand name",
	"R from brandname": "R from brand name",
	"Redirect from brand name": "R from brand name",
	
	"R from British": "R from British English",
	"Redirect from British English": "R from British English",
	"R from BE": "R from British English",
	"R from British spelling": "R from British English",
	
	"R br": "R from bus route",
	"R bus": "R from bus route",
	"R bus route": "R from bus route",
	"R from br": "R from bus route",
	"R from bus": "R from bus route",
	"Redirect br": "R from bus route",
	"Redirect bus": "R from bus route",
	"Redirect bus route": "R from bus route",
	"Redirect from br": "R from bus route",
	"Redirect from bus": "R from bus route",
	"Redirect from bus route": "R from bus route",
	
	"R from London bus": "R from London bus route",
	"R LBR": "R from London bus route",
	"R London br": "R from London bus route",
	"R London bus": "R from London bus route",
	"R London bus route": "R from London bus route",
	"Redirect LBR": "R from London bus route",
	"Redirect London br": "R from London bus route",
	"Redirect London bus": "R from London bus route",
	"Redirect London bus route": "R from London bus route",
	
	"R from NYC bus": "R from NYC bus route",
	"R NYC br": "R from NYC bus route",
	"R NYC bus": "R from NYC bus route",
	"R NYC bus route": "R from NYC bus route",
	"R NYCBR": "R from NYC bus route",
	"Redirect from NYC bus route": "R from NYC bus route",
	"Redirect NYC br": "R from NYC bus route",
	"Redirect NYC bus": "R from NYC bus route",
	"Redirect NYC bus route": "R from NYC bus route",
	"Redirect NYCBR": "R from NYC bus route",
	
	"Redirect from CamelCase": "R from CamelCase",
	"R from camelcase": "R from CamelCase",
	"Rcc": "R from CamelCase",
	"R fCC": "R from CamelCase",
	"R from camel case": "R from CamelCase",
	"R from camelCase": "R from CamelCase",
	"R from StudlyCaps": "R from CamelCase",
	"R from studlycaps": "R from CamelCase",
	"R from studly caps": "R from CamelCase",
	"R from Studly Caps": "R from CamelCase",
	"R rcc": "R from CamelCase",
	
	"R Csn": "R from Canadian settlement name",
	"R csn": "R from Canadian settlement name",
	"Redirect from Canadian settlement name": "R from Canadian settlement name",
	
	"R from CAS number": "R from CAS Number",
	"R from CAS Registry Number": "R from CAS Number",
	
	"R catchphrase": "R from catchphrase",
	"Redirect from catchphrase": "R from catchphrase",
	
	"R cat": "R to category namespace",
	"R to cat": "R to category namespace",
	"R to category": "R to category namespace",
	"R to category page": "R to category namespace",
	"R to category space": "R to category namespace",
	"Redirect to category namespace": "R to category namespace",
	
	"Rcrwp": "R category with possibilities",
	
	"R cityprov": "R from city and province",
	"Redirect from city and province": "R from city and province",
	
	"R citystate": "R from city and state",
	"Redirect from city and state": "R from city and state",
	
	"R cod": "R from code",
	"R code": "R from code",
	"R coding": "R from code",
	"R encoding": "R from code",
	"Redirect cod": "R from code",
	"Redirect code": "R from code",
	"Redirect coding": "R from code",
	"Redirect encoding": "R from code",
	
	"CR from alternative name": "R comics from alternative name",
	"R from alter ego": "R comics from alternative name",
	"R from alternate character": "R comics from alternative name",
	"R from alternative character": "R comics from alternative name",
	"R from secret identity": "R comics from alternative name",
	"Redirect comics from alternative name": "R comics from alternative name",
	"Redirect from secret identity": "R comics from alternative name",
	
	"R cmerge": "R comics from merge",
	"R comics merge": "R comics from merge",
	
	"R comic": "R comics with possibilities",
	"R cwp": "R comics with possibilities",
	"R from comic": "R comics with possibilities",
	"Rcwp": "R comics with possibilities",
	
	"R comics list": "R comics to list entry",
	
	"R cnc": "R comics naming convention",
	"R naming convention comics": "R comics naming convention",
	"Redirect comics naming convention": "R comics naming convention",
	
	"R comics from related words": "R comics from related word",
	"R crw": "R comics from related word",
	"Rcrw": "R comics from related word",
	
	"R comsect": "R comics to section",
	
	"Redirect from noun": "R from common noun",
	"R from noun phrase": "R from common noun",
	"Redirect from noun phrase": "R from common noun",
	"R noun": "R from common noun",
	"Redirect noun": "R from common noun",
	"R from noun": "R from common noun",
	"Redirect from common noun": "R from common noun",
	
	"R con": "R for convenience",
	"R conv": "R for convenience",
	"R convenience": "R for convenience",
	"R convenient": "R for convenience",
	"Rcon": "R for convenience",
	"Redirect con": "R for convenience",
	"Redirect conv": "R for convenience",
	"Redirect convenience": "R for convenience",
	"Redirect convenient": "R for convenience",
	"Redirect for convenience": "R for convenience",
	
	"R decade": "R to decade",
	"Redirect to decade": "R to decade",
	
	"R from name with diacritics": "R from diacritic",
	"R from title with diacritics": "R from diacritic",
	"R with diacritics": "R from diacritic",
	"Redirect from title with diacritics": "R from diacritic",
	"Redirect from diacritics": "R from diacritic",
	"R dia": "R from diacritic",
	"R from accent": "R from diacritic",
	"R with accents": "R from diacritic",
	"R from diacritics": "R from diacritic",
	"Redirect from diacritic": "R from diacritic",
	
	"R to accents": "R to diacritic",
	"Redirects from title without diacritics": "R to diacritic",
	"RDiacr": "R to diacritic",
	"R to unicode name": "R to diacritic",
	"R to unicode": "R to diacritic",
	"R to title with diacritics": "R to diacritic",
	"R from name without diacritics": "R to diacritic",
	"R from original name without diacritics": "R to diacritic",
	"R without diacritics": "R to diacritic",
	"R diacritics": "R to diacritic",
	"Redirect from title without diacritics": "R to diacritic",
	"Redirect to Unicode": "R to diacritic",
	"R to Unicode": "R to diacritic",
	"Redirect without diacritics": "R to diacritic",
	"R to Unicode name": "R to diacritic",
	"Redirect to Unicode name": "R to diacritic",
	"Redirect from name without diacritics": "R to diacritic",
	"R from title without diacritics": "R to diacritic",
	"R to diacritical marks": "R to diacritic",
	"R to diacritical mark": "R to diacritic",
	"R without accents": "R to diacritic",
	"Redirect to diacritics": "R to diacritic",
	"R to diacritics": "R to diacritic",
	"Redirect to diacritic": "R to diacritic",
	"R to accent": "R to diacritic",
	"Redirects from titles without diacritics": "R to diacritic",
	
	"R dab": "R to disambiguation page",
	"R disambig": "R to disambiguation page",
	"R dp": "R to disambiguation page",
	"R from disambig": "R to disambiguation page",
	"R from disambiguation": "R to disambiguation page",
	"R from disambiguation page": "R to disambiguation page",
	"R to DAB": "R to disambiguation page",
	"R to dab": "R to disambiguation page",
	"R to dis": "R to disambiguation page",
	"R to disambig": "R to disambiguation page",
	"R to disambiguation": "R to disambiguation page",
	"R to dp": "R to disambiguation page",
	"Redirect dp": "R to disambiguation page",
	"Redirect to dab": "R to disambiguation page",
	"Redirect to dis": "R to disambiguation page",
	"Redirect to disambiguation": "R to disambiguation page",
	"Redirect to disambiguation page": "R to disambiguation page",
	"Redirect to dp": "R to disambiguation page",
	"Rtdp": "R to disambiguation page",
	
	"R dn": "R from domain name",
	"R from domain": "R from domain name",
	"R from dotcom": "R from domain name",
	"R from URL": "R from domain name",
	"R from url": "R from domain name",
	"R from web address": "R from domain name",
	"R from website": "R from domain name",
	"Redirect dn": "R from domain name",
	"Redirect from domain name": "R from domain name",
	
	"R from draft": "R from drafts",
	
	"R to draft": "R to draft namespace",
	"R to draftspace": "R to draft namespace",
	"Redirect to draft namespace": "R to draft namespace",
	
	"R from trade name": "R from drug trade name",
	"R to trade name": "R from drug trade name",
	"Redirect from trade name": "R from drug trade name",
	
	"R dou": "R from duplicated article",
	"R double": "R from duplicated article",
	"R double article": "R from duplicated article",
	"R du": "R from duplicated article",
	"R dup": "R from duplicated article",
	"R duplicated": "R from duplicated article",
	"R duplicated article": "R from duplicated article",
	"R from duplicate": "R from duplicated article",
	"R from duplicate article": "R from duplicated article",
	"Redirect dou": "R from duplicated article",
	"Redirect double": "R from duplicated article",
	"Redirect double article": "R from duplicated article",
	"Redirect du": "R from duplicated article",
	"Redirect dup": "R from duplicated article",
	"Redirect duplicated": "R from duplicated article",
	"Redirect duplicated article": "R from duplicated article",
	"Redirect from duplicated article": "R from duplicated article",
	
	"R ep": "R from eponym",
	"Redirect from eponym": "R from eponym",
	
	"Character redirect entry": "R from fictional character",
	"CharR to list entry": "R from fictional character",
	"Crl": "R from fictional character",
	"R fc": "R from fictional character",
	"R from character": "R from fictional character",
	"R to character list entry": "R from fictional character",
	"Redirect from character": "R from fictional character",
	"Redirect from fictional character": "R from fictional character",
	"Redirect to character list entry": "R from fictional character",
	
	"FictR to list entry": "R from fictional element",
	"R fe": "R from fictional element",
	"Redirect from fictional element": "R from fictional element",
	
	"R fl": "R from fictional location",
	"R fp": "R from fictional location",
	"R from fictional place": "R from fictional location",
	
	"R ext": "R from file extension",
	"R from filename extension": "R from file extension",
	"Redirect from file extension": "R from file extension",
	
	"R from EXIF": "R from file metadata link",
	"R from Exif": "R from file metadata link",
	"R from exif": "R from file metadata link",
	"R metadata": "R from file metadata link",
	"Redirect from EXIF": "R from file metadata link",
	"Redirect from EXIF file metadata link": "R from file metadata link",
	"Redirect from file metadata link": "R from file metadata link",
	
	"R from filename title": "R from filename",
	"Redirect from filename": "R from filename",
	
	"R from a film": "R from film",
	"Redirect from a film": "R from film",
	"Redirect from film": "R from film",
	
	"R fn": "R from former name",
	"R former": "R from former name",
	"R former name": "R from former name",
	"R former title": "R from former name",
	"R from archaic name": "R from former name",
	"R from archaic title": "R from former name",
	"R from changed name": "R from former name",
	"R from former title": "R from former name",
	"R from old name": "R from former name",
	"R from old title": "R from former name",
	"R from older name": "R from former name",
	"R from older title": "R from former name",
	"R from original name": "R from former name",
	"R from previous name": "R from former name",
	"R from previous title": "R from former name",
	"R from working title": "R from former name",
	"R ft": "R from former name",
	"R old": "R from former name",
	"R old name": "R from former name",
	"R old title": "R from former name",
	"R older": "R from former name",
	"R older name": "R from former name",
	"R older title": "R from former name",
	"R to current name": "R from former name",
	"R to current title": "R from former name",
	"R to modern name": "R from former name",
	"R to modern title": "R from former name",
	"R to new name": "R from former name",
	"R to new title": "R from former name",
	"R to newer name": "R from former name",
	"R to newer title": "R from former name",
	"R to present name": "R from former name",
	"R to present title": "R from former name",
	"Redirect fn": "R from former name",
	"Redirect former": "R from former name",
	"Redirect former name": "R from former name",
	"Redirect former title": "R from former name",
	"Redirect from archaic name": "R from former name",
	"Redirect from archaic title": "R from former name",
	"Redirect from former name": "R from former name",
	"Redirect from former title": "R from former name",
	"Redirect from old name": "R from former name",
	"Redirect from old title": "R from former name",
	"Redirect from older name": "R from former name",
	"Redirect from older title": "R from former name",
	"Redirect from original name": "R from former name",
	"Redirect from previous name": "R from former name",
	"Redirect from previous title": "R from former name",
	"Redirect from working title": "R from former name",
	"Redirect ft": "R from former name",
	"Redirect old name": "R from former name",
	"Redirect old title": "R from former name",
	"Redirect older": "R from former name",
	"Redirect older name": "R from former name",
	"Redirect older title": "R from former name",
	"Redirect to current name": "R from former name",
	"Redirect to current title": "R from former name",
	"Redirect to modern name": "R from former name",
	"Redirect to modern title": "R from former name",
	"Redirect to new name": "R from former name",
	"Redirect to new title": "R from former name",
	"Redirect to newer name": "R from former name",
	"Redirect to newer title": "R from former name",
	"Redirect to present name": "R from former name",
	"Redirect to present title": "R from former name",
	
	"R to birth name": "R to former name",
	"Redirect to former name": "R to former name",
	
	"R gene": "R from gene symbol",
	
	"R from feminine": "R from gender",
	"R from masculine": "R from gender",
	"R from sex": "R from gender",
	"Redirect from gender": "R from gender",
	
	"R ge": "R from gerund",
	"Redirect ge": "R from gerund",
	"Redirect from gerund": "R from gerund",
	
	"R from first name": "R from given name",
	"R from forename": "R from given name",
	"R given name": "R from given name",
	"Redirect from given name": "R from given name",
	
	"R help": "R to help namespace",
	"R to help": "R to help namespace",
	"R to help page": "R to help namespace",
	"R to helpspace": "R to help namespace",
	"Redirect to help namespace": "R to help namespace",
	
	"R high": "R from highway",
	"Redirect from highway": "R from highway",
	
	"R from highway in state": "R from highway in region",
	"R from highway in state with possibilities": "R from highway in region",
	"R highr": "R from highway in region",
	"Redirect from highway in region": "R from highway in region",
	
	"R from highway in region without possibilites": "R from highway in region without possibilities",
	"R from highway without possibilites": "R from highway in region without possibilities",
	"R highrwop": "R from highway in region without possibilities",
	"Redirect from highway in region without possibilities": "R from highway in region without possibilities",
	
	"R from historic term": "R from historic name",
	"R from historic title": "R from historic name",
	"R from historical": "R from historic name",
	"R from historical name": "R from historic name",
	"R from historical term": "R from historic name",
	"R from historical title": "R from historic name",
	"R from obsolete name": "R from historic name",
	"R from obsolete term": "R from historic name",
	"R from obsolete title": "R from historic name",
	"R his": "R from historic name",
	"R historic": "R from historic name",
	"R historic name": "R from historic name",
	"R historic title": "R from historic name",
	"R historical": "R from historic name",
	"R historical name": "R from historic name",
	"R historical title": "R from historic name",
	"R hn": "R from historic name",
	"R ht": "R from historic name",
	"Redirect from historic name": "R from historic name",
	"Redirect from historic title": "R from historic name",
	"Redirect from historical name": "R from historic name",
	"Redirect from historical title": "R from historic name",
	"Redirect from obsolete name": "R from historic name",
	"Redirect from obsolete title": "R from historic name",
	"Redirect his": "R from historic name",
	"Redirect historic": "R from historic name",
	"Redirect historic name": "R from historic name",
	"Redirect historic title": "R from historic name",
	"Redirect historical": "R from historic name",
	"Redirect historical name": "R from historic name",
	"Redirect historical title": "R from historic name",
	"Redirect hn": "R from historic name",
	"Redirect ht": "R from historic name",
	
	"R from adopted name": "R to historic name",
	"R from adoptive name": "R to historic name",
	"R from later name": "R to historic name",
	"R from name change": "R to historic name",
	"R from new name": "R to historic name",
	"R from newer name": "R to historic name",
	"R from rebranding": "R to historic name",
	"R from successor company name": "R to historic name",
	"R thn": "R to historic name",
	"R to earlier name": "R to historic name",
	"R to early name": "R to historic name",
	"R to historic title": "R to historic name",
	"R to old name": "R to historic name",
	"R to older name": "R to historic name",
	"R to original name": "R to historic name",
	"R to predecessor company name": "R to historic name",
	"Redirect from new name": "R to historic name",
	"Redirect to historic name": "R to historic name",
	"Redirect to historic title": "R to historic name",
	
	"R imprint": "R from imprint",
	"Redirect from imprint": "R from imprint",
	
	"R from ambiguous disambiguation": "R from incomplete disambiguation",
	"R from incomplete dab": "R from incomplete disambiguation",
	"R from incomplete disambigaution": "R from incomplete disambiguation",
	"R from insufficient disambiguation": "R from incomplete disambiguation",
	"R from missing disambiguation": "R from incomplete disambiguation",
	"R from partial disambiguation": "R from incomplete disambiguation",
	"R indab": "R from incomplete disambiguation",
	"R partial dab": "R from incomplete disambiguation",
	"Redirect from incomplete disambiguation": "R from incomplete disambiguation",
	"Redirect from missing disambiguation": "R from incomplete disambiguation",
	"Redirect md": "R from incomplete disambiguation",
	
	"R from an incomplete name": "R from incomplete name",
	"R from incomplete title": "R from incomplete name",
	"R to complete name": "R from incomplete name",
	"R to complete title": "R from incomplete name",
	"Redirect from incomplete name": "R from incomplete name",
	"Redirect from incomplete title": "R from incomplete name",
	"Redirect to complete name": "R from incomplete name",
	"Redirect to complete title": "R from incomplete name",
	
	"R id": "R from incorrect disambiguation",
	"R wd": "R from incorrect disambiguation",
	"R wrongdab": "R from incorrect disambiguation",
	"Redirect from incorrect disambiguation": "R from incorrect disambiguation",
	"Redirect id": "R from incorrect disambiguation",
	"Redirect wd": "R from incorrect disambiguation",
	
	"From fake name": "R from incorrect name",
	"From false name": "R from incorrect name",
	"From inaccurate name": "R from incorrect name",
	"From misleading name": "R from incorrect name",
	"From misnomer": "R from incorrect name",
	"From wrong name": "R from incorrect name",
	"R from erroneous name": "R from incorrect name",
	"R from error": "R from incorrect name",
	"R from improper name": "R from incorrect name",
	"R from improper title": "R from incorrect name",
	"R from inaccurate name": "R from incorrect name",
	"R from inappropriate name": "R from incorrect name",
	"R from inappropriate title": "R from incorrect name",
	"R from incorrect": "R from incorrect name",
	"R from incorrect title": "R from incorrect name",
	"R from misleading name": "R from incorrect name",
	"R from misnomer": "R from incorrect name",
	"R from unsuitable title": "R from incorrect name",
	"R from wrong name": "R from incorrect name",
	"R from wrong title": "R from incorrect name",
	"R incorrect": "R from incorrect name",
	"R incorrect name": "R from incorrect name",
	"R to appropriate name": "R from incorrect name",
	"R to appropriate title": "R from incorrect name",
	"R to correct name": "R from incorrect name",
	"R to correct title": "R from incorrect name",
	"R to corrected name": "R from incorrect name",
	"R to corrected title": "R from incorrect name",
	"R to proper name": "R from incorrect name",
	"R to proper title": "R from incorrect name",
	"R wrong": "R from incorrect name",
	"R wrongname": "R from incorrect name",
	"Redirect form incorrect name": "R from incorrect name",
	"Redirect from improper name": "R from incorrect name",
	"Redirect from improper title": "R from incorrect name",
	"Redirect from inaccurate name": "R from incorrect name",
	"Redirect from inappropriate name": "R from incorrect name",
	"Redirect from inappropriate title": "R from incorrect name",
	"Redirect from incorrect name": "R from incorrect name",
	"Redirect from incorrect title": "R from incorrect name",
	"Redirect from unsuitable title": "R from incorrect name",
	"Redirect from wrong name": "R from incorrect name",
	"Redirect from wrong title": "R from incorrect name",
	"Redirect to appropriate name": "R from incorrect name",
	"Redirect to appropriate title": "R from incorrect name",
	"Redirect to correct name": "R from incorrect name",
	"Redirect to correct title": "R from incorrect name",
	"Redirect to corrected name": "R from incorrect name",
	"Redirect to corrected title": "R from incorrect name",
	"Redirect to proper name": "R from incorrect name",
	"Redirect to proper title": "R from incorrect name",
	
	"R ab": "R from initialism",
	"R abb": "R from initialism",
	"R abbr": "R from initialism",
	"R abbreviation": "R from initialism",
	"R from ab": "R from initialism",
	"R from abb": "R from initialism",
	"R from abbr": "R from initialism",
	"R from abbrev": "R from initialism",
	"R from abbreviation": "R from initialism",
	"R from abbreviations": "R from initialism",
	"R from common abbreviation": "R from initialism",
	"R from common initialism": "R from initialism",
	"R from common initials": "R from initialism",
	"R from init": "R from initialism",
	"R from initial": "R from initialism",
	"R from initialisms": "R from initialism",
	"R from initials": "R from initialism",
	"R ii": "R from initialism",
	"R in": "R from initialism",
	"R init": "R from initialism",
	"R initialism": "R from initialism",
	"Redirect ab": "R from initialism",
	"Redirect abb": "R from initialism",
	"Redirect abbr": "R from initialism",
	"Redirect from ab": "R from initialism",
	"Redirect from abb": "R from initialism",
	"Redirect from abbr": "R from initialism",
	"Redirect from abbreviation": "R from initialism",
	"Redirect from abbreviations": "R from initialism",
	"Redirect from common abbreviation": "R from initialism",
	"Redirect from common initialism": "R from initialism",
	"Redirect from common initials": "R from initialism",
	"Redirect from init": "R from initialism",
	"Redirect from initialism": "R from initialism",
	"Redirect from initials": "R from initialism",
	"Redirect ii": "R from initialism",
	"Redirect in": "R from initialism",
	"Redirect init": "R from initialism",
	"Rinit": "R from initialism",
	
	"R to initials": "R to initialism",
	"R to abbreviation": "R to initialism",
	"Redirect to initialism": "R to initialism",
	"Redirect to initials": "R to initialism",
	"Redirect to abbreviation": "R to initialism",
	"R to abbrev": "R to initialism",
	"Redirect to abbrev": "R to initialism",
	"R to abb": "R to initialism",
	"Redirect to abb": "R to initialism",
	"R to ab": "R to initialism",
	"Redirect to ab": "R to initialism",
	"R to initialisms": "R to initialism",
	"Redirect to initialisms": "R to initialism",
	"R to init": "R to initialism",
	"Redirect to init": "R to initialism",
	"R to common initialism": "R to initialism",
	"Redirect to common initialism": "R to initialism",
	"R to common initials": "R to initialism",
	"Redirect to common initials": "R to initialism",
	"R to ci": "R to initialism",
	"Redirect to ci": "R to initialism",
	"R to abbreviations": "R to initialism",
	"Redirect to abbreviations": "R to initialism",
	"R to abbr": "R to initialism",
	"Redirect to abbr": "R to initialism",
	"R to common abbreviation": "R to initialism",
	"Redirect to common abbreviation": "R to initialism",
	"R to ca": "R to initialism",
	"Redirect to ca": "R to initialism",
	"R to in": "R to initialism",
	"Redirect to in": "R to initialism",
	"Rtab": "R to initialism",
	"Rtin": "R to initialism",
	"Rti": "R to initialism",
	
	"R from ISO 4": "R from ISO 4 abbreviation",
	"R from ISO4": "R from ISO 4 abbreviation",
	
	"R java": "R from Java package name",
	
	"R jointbio": "R to joint biography",
	"R to joint bio": "R to joint biography",
	"Redirect to joint biography": "R to joint biography",
	
	"R from broader name": "R from less specific name",
	"R from broader subject": "R from less specific name",
	"R from broader title": "R from less specific name",
	"R from broader topic": "R from less specific name",
	"R from generic name": "R from less specific name",
	"R from less specific": "R from less specific name",
	"R from less specific geographic name": "R from less specific name",
	"R from less specific subject": "R from less specific name",
	"R from less specific title": "R from less specific name",
	"R from less specific topic": "R from less specific name",
	"R from more general name": "R from less specific name",
	"R from more general subject": "R from less specific name",
	"R from more general title": "R from less specific name",
	"R from more general topic": "R from less specific name",
	"R general": "R from less specific name",
	"R less specific": "R from less specific name",
	"R to more specific name": "R from less specific name",
	"Redirect from a less specific name": "R from less specific name",
	"Redirect from a more general name": "R from less specific name",
	"Redirect from less specific name": "R from less specific name",
	"Redirect from more general name": "R from less specific name",
	"Redirect to more specific name": "R from less specific name",
	
	"R from letter-word combination": "R from letter–word combination",
	"R lwc": "R from letter–word combination",
	"Redirect from letter-word combination": "R from letter–word combination",
	"Redirect from letter–word combination": "R from letter–word combination",
	
	"R from title with ligatures": "R from ligature",
	"R from ligatures": "R from ligature",
	
	"R from title without ligatures": "R to ligature",
	"R to ligatures": "R to ligature",
	
	"R from list entry": "R to list entry",
	"R list": "R to list entry",
	"R to a list entry": "R to list entry",
	"R to list": "R to list entry",
	"R to list item": "R to list entry",
	"Redirect to list": "R to list entry",
	"Redirect to list entry": "R to list entry",
	
	"R flt": "R from list topic",
	"R list topic": "R from list topic",
	"Redirect from list topic": "R from list topic",
	
	"R lpn": "R from London place name",
	
	"R from a longer name": "R from long name",
	"R from complete name": "R from long name",
	"R from complete title": "R from long name",
	"R from full name": "R from long name",
	"R from full title": "R from long name",
	"R from lengthened name": "R from long name",
	"R from lengthened title": "R from long name",
	"R from lengthy name": "R from long name",
	"R from lengthy title": "R from long name",
	"R from long": "R from long name",
	"R from long title": "R from long name",
	"R from longer": "R from long name",
	"R from longer name": "R from long name",
	"R from longer title": "R from long name",
	"R full": "R from long name",
	"R full name": "R from long name",
	"R long": "R from long name",
	"R to abbreviated name": "R from long name",
	"R to abbreviated title": "R from long name",
	"R to incomplete name": "R from long name",
	"R to incomplete title": "R from long name",
	"R to short": "R from long name",
	"R to short name": "R from long name",
	"R to short title": "R from long name",
	"R to shortened name": "R from long name",
	"R to shortened title": "R from long name",
	"R to shorter name": "R from long name",
	"R to shorter title": "R from long name",
	"Redirect form full name": "R from long name",
	"Redirect from complete name": "R from long name",
	"Redirect from complete title": "R from long name",
	"Redirect from full name": "R from long name",
	"Redirect from full title": "R from long name",
	"Redirect from lengthened name": "R from long name",
	"Redirect from lengthened title": "R from long name",
	"Redirect from lengthy name": "R from long name",
	"Redirect from lengthy title": "R from long name",
	"Redirect from long name": "R from long name",
	"Redirect from long title": "R from long name",
	"Redirect from longer name": "R from long name",
	"Redirect from longer title": "R from long name",
	"Redirect to abbreviated name": "R from long name",
	"Redirect to abbreviated title": "R from long name",
	"Redirect to incomplete name": "R from long name",
	"Redirect to incomplete title": "R from long name",
	"Redirect to short name": "R from long name",
	"Redirect to short title": "R from long name",
	"Redirect to shortened name": "R from long name",
	"Redirect to shortened title": "R from long name",
	"Redirect to shorter name": "R from long name",
	"Redirect to shorter title": "R from long name",
	
	"R to main": "R to main namespace",
	"R to mainspace": "R to main namespace",
	"Redirect to main": "R to main namespace",
	"Redirect to main namespace": "R to main namespace",
	
	"R mn": "R from married name",
	"Redirect from married name": "R from married name",
	
	"R from equation": "R from mathematical symbol or equation",
	"R math": "R from mathematical symbol or equation",
	"Redirect from mathematical symbol or equation": "R from mathematical symbol or equation",
	
	"R from MathSciNet": "R from MathSciNet abbreviation",
	
	"R from band member": "R from member",
	"R from cast member": "R from member",
	"R from player": "R from member",
	"R from teammate": "R from member",
	"R to parent": "R from member",
	"Redirect from member": "R from member",
	
	"R hatnote": "R mentioned in hatnote",
	"R mentioned in a hatnote": "R mentioned in hatnote",
	"Redirect mentioned in hatnote": "R mentioned in hatnote",
	
	"R after merge": "R from merge",
	"R from former child": "R from merge",
	"R FROM MERGE": "R from merge",
	"R From Merge": "R from merge",
	"R from Merge": "R from merge",
	"R from merge": "R from merge",
	"R from merged article": "R from merge",
	"R from Merger": "R from merge",
	"R from merger": "R from merge",
	"R from merges": "R from merge",
	"R merge": "R from merge",
	"R to merge": "R from merge",
	"Redirect after merge": "R from merge",
	"Redirect from merge": "R from merge",
	
	"R from miscapitalization": "R from miscapitalisation",
	"R from incorrect capitalisation": "R from miscapitalisation",
	"R from incorrect capitalization": "R from miscapitalisation",
	"Redirect from miscapitalisation": "R from miscapitalisation",
	"Redirect from incorrect capitalization": "R from miscapitalisation",
	"Redirect from incorrect capitalisation": "R from miscapitalisation",
	"R miscap": "R from miscapitalisation",
	"R from overcapitalisation": "R from miscapitalisation",
	"R from over-capitalisation": "R from miscapitalisation",
	"R from over-capitalization": "R from miscapitalisation",
	"R from overcapitalization": "R from miscapitalisation",
	"R from miscap": "R from miscapitalisation",
	"R from miscaps": "R from miscapitalisation",
	"Redirect from overcapitalization": "R from miscapitalisation",
	"R from incorrect capitlisation": "R from miscapitalisation",
	
	"R from mispelling": "R from misspelling",
	"R for misspelling": "R from misspelling",
	"R from mispeling": "R from misspelling",
	"R from typo": "R from misspelling",
	"R from misspellings": "R from misspelling",
	"R from incorrect spelling": "R from misspelling",
	"R from misprint": "R from misspelling",
	"R from misspeling": "R from misspelling",
	"R from mispellings": "R from misspelling",
	"R misspelling": "R from misspelling",
	"R From Misspelling": "R from misspelling",
	"R From Mispelling": "R from misspelling",
	"Redirect from misspelling": "R from misspelling",
	"R from mis-spelling": "R from misspelling",
	"R from mis-spellings": "R from misspelling",
	"R typo": "R from misspelling",
	"R from spelling mistake": "R from misspelling",
	"Redirect from incorrect spelling": "R from misspelling",
	"R from common misspelling": "R from misspelling",
	"Redirect from common misspelling": "R from misspelling",
	"Redirect from typo": "R from misspelling",
	"Redirect cm": "R from misspelling",
	"R mi": "R from misspelling",
	"Redirect mi": "R from misspelling",
	"Redirect form misspelling": "R from misspelling",
	"R from tpyo": "R from misspelling",
	"Redirect from mis-spelling": "R from misspelling",
	"Redirect from uncommon misspelling": "R from misspelling",
	"Rfm": "R from misspelling",
	"R from misspell": "R from misspelling",
	"Redirect from spelling error": "R from misspelling",
	"R from full common typo": "R from misspelling",
	"Redirect form mis-spelling": "R from misspelling",
	"From typographical error": "R from misspelling",
	"Redirect from typographical error": "R from misspelling",
	
	"R from alternative punctuation": "R from modification",
	"R mod": "R from modification",
	"R from punctuation": "R from modification",
	"R from alternate punctuation": "R from modification",
	"R from other punctuation": "R from modification",
	"R from alternative spacing": "R from modification",
	"R from alternate spacing": "R from modification",
	"R from incorrect punctuation": "R from modification",
	"R from other hyphenation": "R from modification",
	"R from name with alternate punctuation": "R from modification",
	"Redirect from punctuation": "R from modification",
	"R from alteration": "R from modification",
	"R from rearrangement": "R from modification",
	"R from alternative hyphenation": "R from modification",
	"R to alternative punctuation": "R from modification",
	"Redirect to modification": "R from modification",
	"R to alternate punctuation": "R from modification",
	"R to other punctuation": "R from modification",
	"R to modification": "R from modification",
	"R to alternative hyphenation": "R from modification",
	"R to alternative spacing": "R from modification",
	"R to alternate spacing": "R from modification",
	"Redirect from modification": "R from modification",
	"R from missing punctuation": "R from modification",
	"Redirect from missing punctuation": "R from modification",
	"Redirect from rearrangement": "R from modification",
	"R from word reorder": "R from modification",
	"Redirect from word reorder": "R from modification",
	"Redirect from other word order": "R from modification",
	"R from other word order": "R from modification",
	"R from other arrangement": "R from modification",
	"Redirect from other arrangement": "R from modification",
	"R from word rearrangement": "R from modification",
	"Redirect from word rearrangement": "R from modification",
	"R from other word arrangement": "R from modification",
	"Redirect from other word arrangement": "R from modification",
	"R from reorder": "R from modification",
	"Redirect from reorder": "R from modification",
	"R from other order": "R from modification",
	"Redirect from other order": "R from modification",
	"R from extra punctuation": "R from modification",
	"Redirect from extra punctuation": "R from modification",
	"Redirect from added punctuation": "R from modification",
	"R from added punctuation": "R from modification",
	"R from mod": "R from modification",
	"Redirect from mod": "R from modification",
	"Redirect from incorrect punctuation": "R from modification",
	"Redirect from alternative punctuation": "R from modification",
	"R from extra spacing": "R from modification",
	"Redirect from extra spacing": "R from modification",
	"Redirect from alternate spacing": "R from modification",
	"Redirect from alternative spacing": "R from modification",
	"R from other spacing": "R from modification",
	"Redirect from other spacing": "R from modification",
	"Redirect from alteration": "R from modification",
	"R from modified name": "R from modification",
	"Redirect from modified name": "R from modification",
	"R from modified title": "R from modification",
	"Redirect from modified title": "R from modification",
	"Redirect from name with alternate punctuation": "R from modification",
	"R from title with alternate punctuation": "R from modification",
	"Redirect from title with alternate punctuation": "R from modification",
	"Redirect from other punctuation": "R from modification",
	"Redirect from alternate punctuation": "R from modification",
	"R from arrangement": "R from modification",
	"Redirect from arrangement": "R from modification",
	"R from hyphenation": "R from modification",
	"Redirect from hyphenation": "R from modification",
	"Redirect from other hyphenation": "R from modification",
	"R from alternate hyphenation": "R from modification",
	"Redirect from alternate hyphenation": "R from modification",
	"Redirect from alternative hyphenation": "R from modification",
	"R from incorrect hyphenation": "R from modification",
	"Redirect from incorrect hyphenation": "R from modification",
	"R from missing hyphenation": "R from modification",
	"Redirect from missing hyphenation": "R from modification",
	"R from extra hyphenation": "R from modification",
	"Redirect from extra hyphenation": "R from modification",
	"R from spacing": "R from modification",
	"Redirect from spacing": "R from modification",
	"R from incorrect spacing": "R from modification",
	"Redirect from incorrect spacing": "R from modification",
	"R from missing spacing": "R from modification",
	"Redirect from missing spacing": "R from modification",
	"R from added hyphenation": "R from modification",
	"Redirect from added hyphenation": "R from modification",
	"R from added spacing": "R from modification",
	"Redirect from added spacing": "R from modification",
	"R from altered name": "R from modification",
	"Redirect from altered name": "R from modification",
	"R from altered title": "R from modification",
	"Redirect from altered title": "R from modification",
	"R from alt": "R from modification",
	"Redirect from alt": "R from modification",
	"Redirect mod": "R from modification",
	"R modification": "R from modification",
	"Redirect modification": "R from modification",
	"R alteration": "R from modification",
	"Redirect alteration": "R from modification",
	"R mo": "R from modification",
	"Redirect mo": "R from modification",
	"R from ordering": "R from modification",
	"Redirect from ordering": "R from modification",
	"R from reordering": "R from modification",
	"Redirect from reordering": "R from modification",
	"R from mo": "R from modification",
	"Redirect from mo": "R from modification",
	"R missing spacing": "R from modification",
	"Redirect missing spacing": "R from modification",
	"R ms": "R from modification",
	"Redirect ms": "R from modification",
	"R msp": "R from modification",
	"Redirect msp": "R from modification",
	"R mp": "R from modification",
	"Redirect mp": "R from modification",
	"R eh": "R from modification",
	"Redirect eh": "R from modification",
	"Redirect mh": "R from modification",
	"R mh": "R from modification",
	"R missing hyphenation": "R from modification",
	"Redirect from title with different punctuation": "R from modification",
	"R from alt punctuation": "R from modification",
	"R from alt punct": "R from modification",
	"R from modificatoin": "R from modification",
	"R from modification.": "R from modification",
	"R from mispunctuation": "R from modification",
	"R from whitespace": "R from modification",
	"R from mod name": "R from modification",
	"R from correct hyphenation": "R from modification",
	"Redirect from different punctuation": "R from modification",
	"R ih": "R from modification",
	"R to mod": "R from modification",
	"R from modify": "R from modification",
	"Redirect from different spacing": "R from modification",
	"Redirect to alternative punctuation": "R from modification",
	
	"R from chemical formula": "R from molecular formula",
	"R from empirical formula": "R from molecular formula",
	"R from formula": "R from molecular formula",
	"R mf": "R from molecular formula",
	"Redirect from chemical formula": "R from molecular formula",
	"Redirect from empirical formula": "R from molecular formula",
	"Redirect from formula": "R from molecular formula",
	"Redirect from molecular formula": "R from molecular formula",
	"Rmf": "R from molecular formula",
	
	"R from mt": "R from monotypic taxon",
	"Redirect from monotypic taxon": "R from monotypic taxon",
	
	"R to mt": "R to monotypic taxon",
	
	"R from geo": "R from more specific geographic name",
	"R from more specific place name": "R from more specific geographic name",
	"R from specific geographic location": "R from more specific geographic name",
	"R from specific geographic name": "R from more specific geographic name",
	"R from specific place name": "R from more specific geographic name",
	"R to Spanish municipality": "R from more specific geographic name",
	"Redirect from more specific geographic name": "R from more specific geographic name",
	
	"R from less general name": "R from more specific name",
	"R from more correct name": "R from more specific name",
	"R from more precise name": "R from more specific name",
	"R from more specific": "R from more specific name",
	"R from population to species": "R from more specific name",
	"R from specific name": "R from more specific name",
	"R from subspecies to species": "R from more specific name",
	"R from subtitle": "R from more specific name",
	"R from variety to species": "R from more specific name",
	"R less general": "R from more specific name",
	"R more specific": "R from more specific name",
	"R specific": "R from more specific name",
	"R to less general name": "R from more specific name",
	"R to less precise name": "R from more specific name",
	"R to less specific": "R from more specific name",
	"R to less specific name": "R from more specific name",
	"R to more general name": "R from more specific name",
	"Redirect from more specific name": "R from more specific name",
	"Redirect to less specific": "R from more specific name",
	"Redirect to more general": "R from more specific name",
	
	"R from page move": "R from move",
	"R from rename": "R from move",
	"R move": "R from move",
	"R page move": "R from move",
	"R pm": "R from move",
	"Redirect from move": "R from move",
	"Redirect from page move": "R from move",
	"Redirect move": "R from move",
	"Redirect page move": "R from move",
	"Redirect pm": "R from move",
	
	"R from location and country": "R from name and country",
	"R nac": "R from name and country",
	"Redirect from name and country": "R from name and country",
	
	"R from honorable title": "R from name with title",
	"R from honorary": "R from name with title",
	"R from honorary name": "R from name with title",
	"R from honorary title": "R from name with title",
	"R from honorific": "R from name with title",
	"R from honorific name": "R from name with title",
	"R from honorific style": "R from name with title",
	"R from honorific title": "R from name with title",
	"R with title": "R from name with title",
	
	"R from MEDLINE": "R from NLM abbreviation",
	"R from MEDLINE abbreviation": "R from NLM abbreviation",
	"R from NLM": "R from NLM abbreviation",
	
	"R from biased name": "R from non-neutral name",
	"R from curse": "R from non-neutral name",
	"R from curse word": "R from non-neutral name",
	"R from derogatory": "R from non-neutral name",
	"R from derogatory name": "R from non-neutral name",
	"R from derogatory term": "R from non-neutral name",
	"R from ethnic slur": "R from non-neutral name",
	"R from expletive": "R from non-neutral name",
	"R from explicit word": "R from non-neutral name",
	"R from insult": "R from non-neutral name",
	"R from laudatory": "R from non-neutral name",
	"R from laudatory name": "R from non-neutral name",
	"R from laudatory term": "R from non-neutral name",
	"R from less neutral name": "R from non-neutral name",
	"R from non neutral name": "R from non-neutral name",
	"R from non-neutral": "R from non-neutral name",
	"R from non-neutral phrase": "R from non-neutral name",
	"R from non-neutral sentence": "R from non-neutral name",
	"R from non-neutral word": "R from non-neutral name",
	"R from pejorative": "R from non-neutral name",
	"R from pejorative name": "R from non-neutral name",
	"R from pejorative term": "R from non-neutral name",
	"R from POV name": "R from non-neutral name",
	"R from PoV name": "R from non-neutral name",
	"R from promotional": "R from non-neutral name",
	"R from promotional name": "R from non-neutral name",
	"R from racial slur": "R from non-neutral name",
	"R from royal style": "R from non-neutral name",
	"R from rude word": "R from non-neutral name",
	"R from slang": "R from non-neutral name",
	"R from slur": "R from non-neutral name",
	"R from style": "R from non-neutral name",
	"R from styles": "R from non-neutral name",
	"R from swear": "R from non-neutral name",
	"R from swear word": "R from non-neutral name",
	"R from vulgar word": "R from non-neutral name",
	"R nnn": "R from non-neutral name",
	"R pejorative": "R from non-neutral name",
	"R to more neutral name": "R from non-neutral name",
	"R to neutral": "R from non-neutral name",
	"R to neutral name": "R from non-neutral name",
	"R to NPOV name": "R from non-neutral name",
	"Redirect from non-neutral name": "R from non-neutral name",
	"Redirect from pejorative": "R from non-neutral name",
	
	"R from numbers": "R from numerals",
	"R from numeral": "R from numerals",
	"Redirect from numerals": "R from numerals",
	"Rfn": "R from numerals",
	
	"R to numbers": "R to numerals",
	"R to numeral": "R to numerals",
	"Redirect to numeral": "R to numerals",
	"Redirect to numerals": "R to numerals",
	"Rtn": "R to numerals",
	
	"R for alternate capitalization": "R from other capitalisation",
	"R for alternate capitalisation": "R from other capitalisation",
	"R for alternative capitalization": "R from other capitalisation",
	"R for alternative capitalisation": "R from other capitalisation",
	"R from alternate capitalisation": "R from other capitalisation",
	"R from alternative capitalisation": "R from other capitalisation",
	"R from other capitalization": "R from other capitalisation",
	"R from alternate capitalization": "R from other capitalisation",
	"R from lowercase": "R from other capitalisation",
	"R from alt cap": "R from other capitalisation",
	"R from other Capitalization": "R from other capitalisation",
	"R from capitalization": "R from other capitalisation",
	"R from Capitalisation": "R from other capitalisation",
	"R from Capitalization": "R from other capitalisation",
	"R from capitalisation": "R from other capitalisation",
	"R to Capitalization": "R from other capitalisation",
	"R from alternative capitalization": "R from other capitalisation",
	"Redirect from capitalisation": "R from other capitalisation",
	"R from caps": "R from other capitalisation",
	"R from cap": "R from other capitalisation",
	"R from another capitalisation": "R from other capitalisation",
	"R from another capitalization": "R from other capitalisation",
	"R cap": "R from other capitalisation",
	"R from other caps": "R from other capitalisation",
	"R from alt case": "R from other capitalisation",
	"R to alternate capitalisation": "R from other capitalisation",
	"R from different capitalization": "R from other capitalisation",
	"R to other capitalization": "R from other capitalisation",
	"R caps": "R from other capitalisation",
	"R from other cap": "R from other capitalisation",
	"R from other case": "R from other capitalisation",
	"R from alternative cap": "R from other capitalisation",
	"R from alternative case": "R from other capitalisation",
	"R from different cap": "R from other capitalisation",
	"R from different case": "R from other capitalisation",
	"R from other capitialisation": "R from other capitalisation",
	"R capitalisation": "R from other capitalisation",
	"R from capital": "R from other capitalisation",
	"R from other capitilisation": "R from other capitalisation",
	"R from alternative capitialisation": "R from other capitalisation",
	"Redirect from other capitalisation": "R from other capitalisation",
	"R to alternate capitalization": "R from other capitalisation",
	"Redirect from other capitalization": "R from other capitalisation",
	"R from other Capitalisation": "R from other capitalisation",
	"R to alternative capitalization": "R from other capitalisation",
	"R to alternative capitalisation": "R from other capitalisation",
	"R to alt cap": "R from other capitalisation",
	"R to capitalization": "R from other capitalisation",
	"R to Capitalisation": "R from other capitalisation",
	"R to capitalisation": "R from other capitalisation",
	"R to other caps": "R from other capitalisation",
	"R to different capitalization": "R from other capitalisation",
	"R to other capitialisation": "R from other capitalisation",
	"R to other capitilisation": "R from other capitalisation",
	"R from uppercase": "R from other capitalisation",
	"R from lower case": "R from other capitalisation",
	"R to other capitalisation": "R from other capitalisation",
	"R from all caps": "R from other capitalisation",
	"Redirect from all caps": "R from other capitalisation",
	"R ac": "R from other capitalisation",
	"Redirect ac": "R from other capitalisation",
	"Rcap": "R from other capitalisation",
	"R from alt caps": "R from other capitalisation",
	"Redirect from alt caps": "R from other capitalisation",
	"R to uppercase": "R from other capitalisation",
	"Redirect from different capitalization": "R from other capitalisation",
	"R to lowercase": "R from other capitalisation",
	"R from alternative capital": "R from other capitalisation",
	"R from capitals": "R from other capitalisation",
	"Redirect from alternative capitalisation": "R from other capitalisation",
	"R from alt capitalization": "R from other capitalisation",
	"Redirect from alternate capitalisation": "R from other capitalisation",
	"Capitalization redirect": "R from other capitalisation",
	"R from mixed case": "R from other capitalisation",
	"R from alt capitalisation": "R from other capitalisation",
	"Redirect from capitalization": "R from other capitalisation",
	"Redirect from alternate capitalization": "R from other capitalisation",
	"Redirect from alternative capitalization": "R from other capitalisation",
	"Redirect from lowercase": "R from other capitalisation",
	"R Capitalization": "R from other capitalisation",
	
	"R fod": "R from other disambiguation",
	"R from alt dab": "R from other disambiguation",
	"R from alt disambig": "R from other disambiguation",
	"R from alternate disambiguation": "R from other disambiguation",
	"R from alternative disambiguation": "R from other disambiguation",
	"R from different disambiguation": "R from other disambiguation",
	"R from other dab": "R from other disambiguation",
	"R to alternate disambiguation": "R from other disambiguation",
	"R to alternative disambiguation": "R from other disambiguation",
	"R to other disambiguation": "R from other disambiguation",
	"Redirect from alternative disambiguation": "R from other disambiguation",
	"Redirect from other disambiguation": "R from other disambiguation",
	
	"R from people": "R from person",
	"R from persons": "R from person",
	"R to person": "R from person",
	"Redirect from people": "R from person",
	"Redirect from person": "R from person",
	
	"R from legal name": "R from personal name",
	"R from personal": "R from personal name",
	"R p n": "R from personal name",
	"Redirect from personal name": "R from personal name",
	"Rpn": "R from personal name",
	
	"R from phrases": "R from phrase",
	"R phrase": "R from phrase",
	"Redirect from phrase": "R from phrase",
	"Redirect from phrases": "R from phrase",
	
	"R plants with possibilities": "R plant with possibilities",
	"R pwp": "R plant with possibilities",
	"Redirect plant with possibilities": "R plant with possibilities",
	"Rpwp": "R plant with possibilities",
	
	"R from Plural": "R from plural",
	"R to singular": "R from plural",
	"Redirect to singular": "R from plural",
	"Redirect from plural": "R from plural",
	"R from pluralization": "R from plural",
	"Redirect from pluralization": "R from plural",
	"R from pluralisation": "R from plural",
	"Redirect from pluralisation": "R from plural",
	"R from plural form": "R from plural",
	"Redirect from plural form": "R from plural",
	"Redirect in plural form": "R from plural",
	"R in plural form": "R from plural",
	"R in plural": "R from plural",
	"Redirect in plural": "R from plural",
	"R from pluralised title": "R from plural",
	"Redirect from pluralised title": "R from plural",
	"R from pluralized title": "R from plural",
	"Redirect from pluralized title": "R from plural",
	"R from pluralised form": "R from plural",
	"Redirect from pluralised form": "R from plural",
	"R from pluralized form": "R from plural",
	"Redirect from pluralized form": "R from plural",
	"R from plural title": "R from plural",
	"Redirect from plural title": "R from plural",
	"R to singular title": "R from plural",
	"Redirect to singular title": "R from plural",
	"R to singular form": "R from plural",
	"Redirect to singular form": "R from plural",
	"R pl": "R from plural",
	"Redirect pl": "R from plural",
	"R fpl": "R from plural",
	
	"R from singular": "R to plural",
	"R from singular form": "R to plural",
	"R from singular title": "R to plural",
	"R in singular": "R to plural",
	"R in singular form": "R to plural",
	"R si": "R to plural",
	"R to plural form": "R to plural",
	"R to plural from": "R to plural",
	"R to plural title": "R to plural",
	"R to pluralisation": "R to plural",
	"R to pluralised form": "R to plural",
	"R to pluralised title": "R to plural",
	"R to pluralization": "R to plural",
	"R to pluralized form": "R to plural",
	"R to pluralized title": "R to plural",
	"R tpl": "R to plural",
	"Redirect from singular": "R to plural",
	"Redirect from singular form": "R to plural",
	"Redirect from singular title": "R to plural",
	"Redirect in singular": "R to plural",
	"Redirect in singular form": "R to plural",
	"Redirect si": "R to plural",
	"Redirect to plural": "R to plural",
	"Redirect to plural form": "R to plural",
	"Redirect to plural title": "R to plural",
	"Redirect to pluralisation": "R to plural",
	"Redirect to pluralised form": "R to plural",
	"Redirect to pluralised title": "R to plural",
	"Redirect to pluralization": "R to plural",
	"Redirect to pluralized form": "R to plural",
	"Redirect to pluralized title": "R to plural",
	
	"R from portal": "R to portal namespace",
	"R to portal": "R to portal namespace",
	"R to portal space": "R to portal namespace",
	"Redirect to portal": "R to portal namespace",
	"Redirect to portal namespace": "R to portal namespace",
	
	"R portmanteau": "R from portmanteau",
	
	"R from possibilities": "R with possibilities",
	"R from subtopic with possibilities": "R with possibilities",
	"R opt": "R with possibilities",
	"R po": "R with possibilities",
	"R pos": "R with possibilities",
	"R poss": "R with possibilities",
	"R possibilities": "R with possibilities",
	"R pot": "R with possibilities",
	"R with article potential": "R with possibilities",
	"R with options": "R with possibilities",
	"R with poss": "R with possibilities",
	"R with possibilites": "R with possibilities",
	"R with Possibilities": "R with possibilities",
	"R with possibility": "R with possibilities",
	"R with possibilties": "R with possibilities",
	"R with possiblities": "R with possibilities",
	"R with pot": "R with possibilities",
	"R with potential": "R with possibilities",
	"R with promise": "R with possibilities",
	"Redirect from subtopic with possibilities": "R with possibilities",
	"Redirect opt": "R with possibilities",
	"Redirect po": "R with possibilities",
	"Redirect pos": "R with possibilities",
	"Redirect poss": "R with possibilities",
	"Redirect pot": "R with possibilities",
	"Redirect with article potential": "R with possibilities",
	"Redirect with possibilities": "R with possibilities",
	"Redirect with pot": "R with possibilities",
	"Redirects with possibilities": "R with possibilities",
	"Redirects with potential": "R with possibilities",
	"RWP": "R with possibilities",
	"RwP": "R with possibilities",
	"Rwp": "R with possibilities",
	
	"R from postcode": "R from postal code",
	"Redirect from postal code": "R from postal code",
	"Redirect from postcode": "R from postal code",
	
	"R from predictable": "R from predictable disambiguation",
	"R from predictable disambig": "R from predictable disambiguation",
	"R predict": "R from predictable disambiguation",
	"R predictable": "R from predictable disambiguation",
	"R predictable disambig": "R from predictable disambiguation",
	"R predictable disambiguation": "R from predictable disambiguation",
	
	"R from product": "R from product name",
	"R from service": "R from product name",
	"R prod": "R from product name",
	"Redirect from product": "R from product name",
	
	"R project namespace": "R to project namespace",
	"R projectspace": "R to project namespace",
	"R To Project": "R to project namespace",
	"R to Project": "R to project namespace",
	"R to project": "R to project namespace",
	"R to project page": "R to project namespace",
	"R to project space": "R to project namespace",
	"R to projectspace": "R to project namespace",
	"R to Wikipedia namespace": "R to project namespace",
	"R to wikipedia namespace": "R to project namespace",
	"R WP": "R to project namespace",
	"Redirect to project": "R to project namespace",
	"Redirect to project namespace": "R to project namespace",
	"Redirect WP": "R to project namespace",
	
	"Redirect from proper noun": "R from proper noun",
	"R from proper name": "R from proper noun",
	"Redirect from proper name": "R from proper noun",
	"R from capitalised noun": "R from proper noun",
	"Redirect from capitalised noun": "R from proper noun",
	"R from capitalized noun": "R from proper noun",
	"Redirect from capitalized noun": "R from proper noun",
	"R from proper": "R from proper noun",
	"Redirect from proper": "R from proper noun",
	"R pn": "R from proper noun",
	"Redirect pn": "R from proper noun",
	"R cn": "R from proper noun",
	"Redirect cn": "R from proper noun",
	
	"R from pen name": "R from pseudonym",
	"R from stage name": "R from pseudonym",
	"Redirect form pseudonym": "R from pseudonym",
	"Redirect from pen name": "R from pseudonym",
	"Redirect from pen-name": "R from pseudonym",
	"Redirect from pseudonym": "R from pseudonym",
	"Redirect from stage name": "R from pseudonym",
	
	"R from &": "R from railroad name with ampersand",
	"R from ampersand": "R from railroad name with ampersand",
	
	"R from redirect template": "R to redirect template",
	"R red": "R to redirect template",
	"R red temp": "R to redirect template",
	"R redirect template": "R to redirect template",
	"R rt": "R to redirect template",
	"R to R": "R to redirect template",
	"R to R template": "R to redirect template",
	"R To Redirect Template": "R to redirect template",
	"R to Redirect Template": "R to redirect template",
	"R to RT": "R to redirect template",
	"R to rt": "R to redirect template",
	"Redirect red": "R to redirect template",
	"Redirect red temp": "R to redirect template",
	"Redirect redirect template": "R to redirect template",
	"Redirect rt": "R to redirect template",
	"Redirect to R": "R to redirect template",
	"Redirect to R Template": "R to redirect template",
	"Redirect to R template": "R to redirect template",
	"Redirect to redirect template": "R to redirect template",
	"Redirect to RT": "R to redirect template",
	"Redirect to rt": "R to redirect template",
	"Rtrt": "R to redirect template",
	
	"R from related article": "R to related topic",
	"R from related subject": "R to related topic",
	"R from related term": "R to related topic",
	"R from related topic": "R to related topic",
	"R related topic": "R to related topic",
	"R rrt": "R to related topic",
	"R rs": "R to related topic",
	"R to a related topic": "R to related topic",
	"R to event": "R to related topic",
	"R to included subject": "R to related topic",
	"R to included topic": "R to related topic",
	"R to related": "R to related topic",
	"R to related article": "R to related topic",
	"R to related subject": "R to related topic",
	"R to related term": "R to related topic",
	"R to small subject": "R to related topic",
	"R to small topic": "R to related topic",
	"R to smaller subject": "R to related topic",
	"R to smaller topic": "R to related topic",
	"Redirect from related article": "R to related topic",
	"Redirect from related subject": "R to related topic",
	"Redirect from related term": "R to related topic",
	"Redirect from related topic": "R to related topic",
	"Redirect rs": "R to related topic",
	"Redirect to event": "R to related topic",
	"Redirect to included subject": "R to related topic",
	"Redirect to included topic": "R to related topic",
	"Redirect to related article": "R to related topic",
	"Redirect to related subject": "R to related topic",
	"Redirect to related term": "R to related topic",
	"Redirect to related topic": "R to related topic",
	"Redirect to small subject": "R to related topic",
	"Redirect to small topic": "R to related topic",
	"Redirect to smaller subject": "R to related topic",
	"Redirect to smaller topic": "R to related topic",
	"Rrt": "R to related topic",
	
	"R from hook line": "R from related word",
	"R from lyric": "R from related word",
	"R from other tense": "R from related word",
	"R from other verb tense": "R from related word",
	"R from past tense": "R from related word",
	"R from related": "R from related word",
	"R from related phrase": "R from related word",
	"R from related words": "R from related word",
	"R from rw": "R from related word",
	"R from search term": "R from related word",
	"R from similar": "R from related word",
	"R from similar word": "R from related word",
	"R from similar words": "R from related word",
	"R from tense": "R from related word",
	"R from verb tense": "R from related word",
	"R related": "R from related word",
	"R rw": "R from related word",
	"R sw": "R from related word",
	"R to related word": "R from related word",
	"R to related words": "R from related word",
	"R to similar": "R from related word",
	"R to similar word": "R from related word",
	"R to similar words": "R from related word",
	"Redirect from other tense": "R from related word",
	"Redirect from other verb tense": "R from related word",
	"Redirect from related": "R from related word",
	"Redirect from related phrase": "R from related word",
	"Redirect from related word": "R from related word",
	"Redirect from related words": "R from related word",
	"Redirect from rw": "R from related word",
	"Redirect from similar": "R from related word",
	"Redirect from similar word": "R from related word",
	"Redirect from similar words": "R from related word",
	"Redirect from tense": "R from related word",
	"Redirect from verb tense": "R from related word",
	"Redirect related": "R from related word",
	"Redirect rw": "R from related word",
	"Redirect sw": "R from related word",
	"Redirect to related": "R from related word",
	"Redirect to related title": "R from related word",
	"Redirect to related word": "R from related word",
	"Redirect to related words": "R from related word",
	"Redirect to similar": "R from related word",
	"Redirect to similar word": "R from related word",
	"Redirect to similar words": "R from related word",
	
	"R from Roman Numerals": "R from Roman numerals",
	"Redirect from Roman numerals": "R from Roman numerals",
	
	"R school": "R from school",
	"Redirect from school": "R from school",
	
	"R sa": "R from scientific abbreviation",
	"Redirect from scientific abbreviation": "R from scientific abbreviation",
	"Rsa": "R from scientific abbreviation",
	
	"R from binomial name": "R from scientific name",
	"R from biological member": "R from scientific name",
	"R from biological name": "R from scientific name",
	"R from order": "R from scientific name",
	"R from scientific title": "R from scientific name",
	"R from species name": "R from scientific name",
	"R sci": "R from scientific name",
	"R to common": "R from scientific name",
	"R to common name": "R from scientific name",
	"R to non-scientific name": "R from scientific name",
	"R to non-scientific title": "R from scientific name",
	"Redirect from astronomical name": "R from scientific name",
	"Redirect from binomial name": "R from scientific name",
	"Redirect from biological member": "R from scientific name",
	"Redirect from biological name": "R from scientific name",
	"Redirect from nomen erratum": "R from scientific name",
	"Redirect from order": "R from scientific name",
	"Redirect from scientific name": "R from scientific name",
	"Redirect from scientific title": "R from scientific name",
	"Redirect from species name": "R from scientific name",
	"Redirect to common name": "R from scientific name",
	"Redirect to non-scientific name": "R from scientific name",
	"Redirect to non-scientific title": "R from scientific name",
	"Rsci": "R from scientific name",
	
	"R from common name": "R to scientific name",
	"R from non-scientific name": "R to scientific name",
	"R from non-scientific title": "R to scientific name",
	"R from vernacular name": "R to scientific name",
	"R to astronomical name": "R to scientific name",
	"R to biological name": "R to scientific name",
	"R to scientific": "R to scientific name",
	"R to scientific title": "R to scientific name",
	"Redirect from common name": "R to scientific name",
	"Redirect from non-scientific name": "R to scientific name",
	"Redirect from non-scientific title": "R to scientific name",
	"Redirect from vernacular name": "R to scientific name",
	"Redirect to astronomical name": "R to scientific name",
	"Redirect to biological name": "R to scientific name",
	"Redirect to scientific name": "R to scientific name",
	"Redirect to scientific title": "R to scientific name",
	"Rtsci": "R to scientific name",
	
	"R from section": "R to section",
	"R se": "R to section",
	"R sec": "R to section",
	"R sect": "R to section",
	"R section": "R to section",
	"R to a section": "R to section",
	"R to Section": "R to section",
	"R to subsection": "R to section",
	"Redirect se": "R to section",
	"Redirect sec": "R to section",
	"Redirect to section": "R to section",
	"Redirect to subsection": "R to section",
	"Rts": "R to section",
	"Section redirect": "R to section",
	
	"R from a shorter name": "R from short name",
	"R from abbreviated name": "R from short name",
	"R from abbreviated title": "R from short name",
	"R from contraction": "R from short name",
	"R from short": "R from short name",
	"R from short title": "R from short name",
	"R from shortened name": "R from short name",
	"R from shortened title": "R from short name",
	"R from shortening": "R from short name",
	"R from shorter form of name": "R from short name",
	"R from shorter name": "R from short name",
	"R from shorter title": "R from short name",
	"R short": "R from short name",
	"R sn": "R from short name",
	"R to full name": "R from short name",
	"R to full title": "R from short name",
	"R to lengthened name": "R from short name",
	"R to lengthened title": "R from short name",
	"R to lengthy name": "R from short name",
	"R to lengthy title": "R from short name",
	"R to long name": "R from short name",
	"R to long title": "R from short name",
	"R to longer name": "R from short name",
	"R to longer title": "R from short name",
	"Redirect from abbreviated name": "R from short name",
	"Redirect from abbreviated title": "R from short name",
	"Redirect from contraction": "R from short name",
	"Redirect from short name": "R from short name",
	"Redirect from short title": "R from short name",
	"Redirect from shortened name": "R from short name",
	"Redirect from shortened title": "R from short name",
	"Redirect from shorter name": "R from short name",
	"Redirect from shorter title": "R from short name",
	"Redirect from unadorned name": "R from short name",
	"Redirect to full name": "R from short name",
	"Redirect to full title": "R from short name",
	"Redirect to lengthened name": "R from short name",
	"Redirect to lengthened title": "R from short name",
	"Redirect to lengthy name": "R from short name",
	"Redirect to lengthy title": "R from short name",
	"Redirect to long name": "R from short name",
	"Redirect to long title": "R from short name",
	"Redirect to longer name": "R from short name",
	"Redirect to longer title": "R from short name",
	
	"R from short cut": "R from shortcut",
	"R from Shortcut": "R from shortcut",
	"R sc": "R from shortcut",
	"R sh": "R from shortcut",
	"R shortcut": "R from shortcut",
	"Redirect from short cut": "R from shortcut",
	"Redirect from short-cut": "R from shortcut",
	"Redirect from shortcut": "R from shortcut",
	"Redirect sc": "R from shortcut",
	"Redirect sh": "R from shortcut",
	"Rsh": "R from shortcut",
	
	"R from sorting name": "R from sort name",
	"R so": "R from sort name",
	"R sort": "R from sort name",
	"R sort name": "R from sort name",
	"R sorted": "R from sort name",
	"R sorted name": "R from sort name",
	"Redirect from sort name": "R from sort name",
	"Redirect so": "R from sort name",
	"Redirect sort": "R from sort name",
	"Redirect sort name": "R from sort name",
	"Redirect sorted": "R from sort name",
	"Redirect sorted name": "R from sort name",
	
	"R from husband": "R from spouse",
	"R from wife": "R from spouse",
	"R husband": "R from spouse",
	"R spouse": "R from spouse",
	"R to spouse": "R from spouse",
	"R wife": "R from spouse",
	"R xh": "R from spouse",
	"R xs": "R from spouse",
	"R xsp": "R from spouse",
	"R xw": "R from spouse",
	"Redirect from spouse": "R from spouse",
	"Redirect from wife": "R from spouse",
	"Redirect husband": "R from spouse",
	"Redirect spouse": "R from spouse",
	"Redirect wife": "R from spouse",
	"Redirect xh": "R from spouse",
	"Redirect xs": "R from spouse",
	"Redirect xsp": "R from spouse",
	"Redirect xw": "R from spouse",
	
	"R from ticker symbol": "R from stock symbol",
	"R stock": "R from stock symbol",
	"R stocks": "R from stock symbol",
	"R stocksym": "R from stock symbol",
	"R tickersym": "R from stock symbol",
	"R Wall Street": "R from stock symbol",
	"Redirect from stock symbol": "R from stock symbol",
	
	"R stub": "R to stub template",
	"Rtst": "R to stub template",
	
	"Redirect from stylization": "R from stylization",
	"R sty": "R from stylization",
	"Redirect sty": "R from stylization",
	"R stylized": "R from stylization",
	"Redirect stylized": "R from stylization",
	"R stylised": "R from stylization",
	"Redirect stylised": "R from stylization",
	"Redirect cs": "R from stylization",
	"R styled": "R from stylization",
	"R from stylisation": "R from stylization",
	"R from styling": "R from stylization",
	"R from stylized": "R from stylization",
	"R from stylised": "R from stylization",
	"R from stylised name": "R from stylization",
	"R from stylized name": "R from stylization",
	"R from styled name": "R from stylization",
	"R from styled": "R from stylization",
	"R stylization": "R from stylization",
	
	"R from breed to list": "R from subtopic",
	"R from cultivar to species": "R from subtopic",
	"R from division": "R from subtopic",
	"R from event": "R from subtopic",
	"R from included subject": "R from subtopic",
	"R from included topic": "R from subtopic",
	"R from it": "R from subtopic",
	"R from small subject": "R from subtopic",
	"R from small topic": "R from subtopic",
	"R from smaller subject": "R from subtopic",
	"R from smaller topic": "R from subtopic",
	"R from species to genus": "R from subtopic",
	"R from st": "R from subtopic",
	"R from sub-topic": "R from subtopic",
	"R from subdivision": "R from subtopic",
	"R from subset": "R from subtopic",
	"R from subsidiary": "R from subtopic",
	"R from subspecies to genus": "R from subtopic",
	"R fst": "R from subtopic",
	"R future": "R from subtopic",
	"R st": "R from subtopic",
	"R subtopic": "R from subtopic",
	"R to broader topic": "R from subtopic",
	"Redirect from event": "R from subtopic",
	"Redirect from included subject": "R from subtopic",
	"Redirect from included topic": "R from subtopic",
	"Redirect from it": "R from subtopic",
	"Redirect from small subject": "R from subtopic",
	"Redirect from small topic": "R from subtopic",
	"Redirect from smaller subject": "R from subtopic",
	"Redirect from smaller topic": "R from subtopic",
	"Redirect from st": "R from subtopic",
	"Redirect from subset": "R from subtopic",
	"Redirect from subsidiary": "R from subtopic",
	"Redirect from subsidiary topic": "R from subtopic",
	"Redirect from subtopic": "R from subtopic",
	"Redirect st": "R from subtopic",
	
	"R tst": "R to subtopic",
	"Redirect to subtopic": "R to subtopic",
	
	"R doc": "R from subpage",
	"R from /doc page": "R from subpage",
	"R from archive": "R from subpage",
	"R from doc page": "R from subpage",
	"R from documentation": "R from subpage",
	"R from documentation page": "R from subpage",
	"R from sandbox": "R from subpage",
	"R subpage": "R from subpage",
	"Redirect from documentation": "R from subpage",
	"Redirect from documentation subpage": "R from subpage",
	"Redirect from subpage": "R from subpage",
	
	"R from incorrect hereditary title": "R from subsidiary title",
	"Redirect from subsidiary title": "R from subsidiary title",
	
	"R from family name": "R from surname",
	"R from last name": "R from surname",
	"R sur": "R from surname",
	"R surname": "R from surname",
	"Redirect from family name": "R from surname",
	"Redirect from last name": "R from surname",
	"Redirect from surname": "R from surname",
	
	"R sym": "R from symbol",
	"R symbol": "R from symbol",
	"Redirect from symbol": "R from symbol",
	
	"R syn": "R from synonym",
	"R synonym": "R from synonym",
	"R to synonym": "R from synonym",
	"Redirect from synonym": "R from synonym",
	
	"R fsa": "R from systematic abbreviation",
	"Redirect from systematic abbreviation": "R from systematic abbreviation",
	
	"R from systematic": "R from systematic name",
	"Redirect from systematic name": "R from systematic name",
	"Rfsn": "R from systematic name",
	
	"Rtsn": "R to systematic name",
	
	"R talk": "R to talk page",
	"R talk p": "R to talk page",
	"R to talk": "R to talk page",
	"R to talk namespace": "R to talk page",
	"Redirect talk p": "R to talk page",
	"Redirect to talk": "R to talk page",
	"Redirect to talk namespace": "R to talk page",
	"Redirect to talk page": "R to talk page",
	
	"R from actual": "R from technical name",
	"R from actual name": "R from technical name",
	"R from actual term": "R from technical name",
	"R from actual title": "R from technical name",
	"R from astronomical name": "R from technical name",
	"R from chemical name": "R from technical name",
	"R from jargon": "R from technical name",
	"R from jargon name": "R from technical name",
	"R from jargon term": "R from technical name",
	"R from jargon title": "R from technical name",
	"R from molecular name": "R from technical name",
	"R from official": "R from technical name",
	"R from official term": "R from technical name",
	"R from official title": "R from technical name",
	"R from tech": "R from technical name",
	"R from technical": "R from technical name",
	"R from technical term": "R from technical name",
	"R from technical title": "R from technical name",
	"R to unofficial": "R from technical name",
	"R to unofficial name": "R from technical name",
	"R to unofficial term": "R from technical name",
	"R to unofficial title": "R from technical name",
	"Redirect from actual": "R from technical name",
	"Redirect from actual name": "R from technical name",
	"Redirect from actual term": "R from technical name",
	"Redirect from actual title": "R from technical name",
	"Redirect from chemical name": "R from technical name",
	"Redirect from jargon": "R from technical name",
	"Redirect from jargon name": "R from technical name",
	"Redirect from jargon term": "R from technical name",
	"Redirect from jargon title": "R from technical name",
	"Redirect from molecular name": "R from technical name",
	"Redirect from official": "R from technical name",
	"Redirect from official name": "R from technical name",
	"Redirect from official term": "R from technical name",
	"Redirect from official title": "R from technical name",
	"Redirect from technical": "R from technical name",
	"Redirect from technical name": "R from technical name",
	"Redirect from technical term": "R from technical name",
	"Redirect from technical title": "R from technical name",
	"Redirect to unofficial": "R from technical name",
	"Redirect to unofficial name": "R from technical name",
	"Redirect to unofficial term": "R from technical name",
	"Redirect to unofficial title": "R from technical name",
	"Rftn": "R from technical name",
	
	"R from unofficial": "R to technical name",
	"R from unofficial name": "R to technical name",
	"R from unofficial term": "R to technical name",
	"R from unofficial title": "R to technical name",
	"R tech": "R to technical name",
	"R to actual": "R to technical name",
	"R to actual name": "R to technical name",
	"R to actual term": "R to technical name",
	"R to actual title": "R to technical name",
	"R to chemical name": "R to technical name",
	"R to jargon": "R to technical name",
	"R to jargon name": "R to technical name",
	"R to jargon term": "R to technical name",
	"R to jargon title": "R to technical name",
	"R to molecular name": "R to technical name",
	"R to official": "R to technical name",
	"R to official name": "R to technical name",
	"R to official term": "R to technical name",
	"R to official title": "R to technical name",
	"R to technical": "R to technical name",
	"R to technical term": "R to technical name",
	"R to technical title": "R to technical name",
	"R to true name": "R to technical name",
	"R to true title": "R to technical name",
	"Redirect from unofficial": "R to technical name",
	"Redirect from unofficial name": "R to technical name",
	"Redirect from unofficial term": "R to technical name",
	"Redirect from unofficial title": "R to technical name",
	"Redirect to actual": "R to technical name",
	"Redirect to actual name": "R to technical name",
	"Redirect to actual term": "R to technical name",
	"Redirect to actual title": "R to technical name",
	"Redirect to chemical name": "R to technical name",
	"Redirect to jargon": "R to technical name",
	"Redirect to jargon name": "R to technical name",
	"Redirect to jargon term": "R to technical name",
	"Redirect to jargon title": "R to technical name",
	"Redirect to molecular name": "R to technical name",
	"Redirect to official": "R to technical name",
	"Redirect to official name": "R to technical name",
	"Redirect to official term": "R to technical name",
	"Redirect to official title": "R to technical name",
	"Redirect to technical": "R to technical name",
	"Redirect to technical name": "R to technical name",
	"Redirect to technical term": "R to technical name",
	"Redirect to technical title": "R to technical name",
	"Redirect to true name": "R to technical name",
	"Redirect to true title": "R to technical name",
	
	"R from phone number": "R from telephone number",
	"R from telephone numbers": "R from telephone number",
	"R tn": "R from telephone number",
	"Redirect from telephone number": "R from telephone number",
	
	"R to template": "R to template namespace",
	"R to template space": "R to template namespace",
	"R to templatespace": "R to template namespace",
	"Redirect to template": "R to template namespace",
	"Redirect to template namespace": "R to template namespace",
	
	"R from temp short": "R from template shortcut",
	"R from temp shortcut": "R from template shortcut",
	"R from template short": "R from template shortcut",
	"R from template shortcuts": "R from template shortcut",
	"R from TS": "R from template shortcut",
	"R from ts": "R from template shortcut",
	"R from tsh": "R from template shortcut",
	"R temp short": "R from template shortcut",
	"R temp shortcut": "R from template shortcut",
	"R template short": "R from template shortcut",
	"R template shortcut": "R from template shortcut",
	"R ts": "R from template shortcut",
	"R tsc": "R from template shortcut",
	"R tsh": "R from template shortcut",
	"Redirect from temp short": "R from template shortcut",
	"Redirect from temp shortcut": "R from template shortcut",
	"Redirect from template short": "R from template shortcut",
	"Redirect from template short-cut": "R from template shortcut",
	"Redirect from template shortcut": "R from template shortcut",
	"Redirect from TS": "R from template shortcut",
	"Redirect from ts": "R from template shortcut",
	"Redirect from tsh": "R from template shortcut",
	"Redirect temp short": "R from template shortcut",
	"Redirect temp shortcut": "R from template shortcut",
	"Redirect template short": "R from template shortcut",
	"Redirect template shortcut": "R from template shortcut",
	"Redirect ts": "R from template shortcut",
	"Redirect tsc": "R from template shortcut",
	"Redirect tsh": "R from template shortcut",
	
	"ER to list entry": "R to TV episode list entry",
	"R from episode": "R to TV episode list entry",
	"R to TV episode": "R to TV episode list entry",
	"R to TV episode list entry": "R to TV episode list entry",
	"R to TV list entry": "R to TV episode list entry",
	"Redirect to television episode list entry": "R to TV episode list entry",
	"Redirect to TV episode list entry": "R to TV episode list entry",
	
	"R from Twitter": "R from Twitter username",
	"R from twitter": "R from Twitter username",
	"R from twitter username": "R from Twitter username",
	
	"R UKP": "R from UK postcode",
	"R ukp": "R from UK postcode",
	"R UKPC": "R from UK postcode",
	"R ukpc": "R from UK postcode",
	"Redirect UKP": "R from UK postcode",
	"Redirect UKPC": "R from UK postcode",
	"RUKP": "R from UK postcode",
	"RUKPC": "R from UK postcode",
	
	"R from U character": "R from Unicode",
	"R from unicode": "R from Unicode",
	"R from Unicode character": "R from Unicode",
	"R U": "R from Unicode",
	"R u": "R from Unicode",
	"R Uc": "R from Unicode",
	"R Unicode": "R from Unicode",
	"R unicode": "R from Unicode",
	"Redirect from U character": "R from Unicode",
	"Redirect from Unicode": "R from Unicode",
	"Redirect from unicode": "R from Unicode",
	"Redirect from Unicode character": "R from Unicode",
	"Redirect U": "R from Unicode",
	"Redirect u": "R from Unicode",
	"Redirect Uc": "R from Unicode",
	"Redirect Unicode": "R from Unicode",
	
	"R from added disambig": "R from unnecessary disambiguation",
	"R from added disambiguation": "R from unnecessary disambiguation",
	"R from additional disambig": "R from unnecessary disambiguation",
	"R from additional disambiguation": "R from unnecessary disambiguation",
	"R from extra disambig": "R from unnecessary disambiguation",
	"R from extra disambiguation": "R from unnecessary disambiguation",
	"R from qualifier": "R from unnecessary disambiguation",
	"R from redundant disambiguation": "R from unnecessary disambiguation",
	"R from superfluous disambig": "R from unnecessary disambiguation",
	"R from UD": "R from unnecessary disambiguation",
	"R from ud": "R from unnecessary disambiguation",
	"R from un dab": "R from unnecessary disambiguation",
	"R from undab": "R from unnecessary disambiguation",
	"R from unneccesary disambiguation": "R from unnecessary disambiguation",
	"R from unnecessary dab": "R from unnecessary disambiguation",
	"R from unnecessary disambig": "R from unnecessary disambiguation",
	"R from unneeded disambig": "R from unnecessary disambiguation",
	"R from unneeded disambiguation": "R from unnecessary disambiguation",
	"R ud": "R from unnecessary disambiguation",
	"R undis": "R from unnecessary disambiguation",
	"R unnecessary dab": "R from unnecessary disambiguation",
	"Redirect from added disambig": "R from unnecessary disambiguation",
	"Redirect from added disambiguation": "R from unnecessary disambiguation",
	"Redirect from additional disambig": "R from unnecessary disambiguation",
	"Redirect from additional disambiguation": "R from unnecessary disambiguation",
	"Redirect from extra disambig": "R from unnecessary disambiguation",
	"Redirect from extra disambiguation": "R from unnecessary disambiguation",
	"Redirect from UD": "R from unnecessary disambiguation",
	"Redirect from ud": "R from unnecessary disambiguation",
	"Redirect from unnecessary disambig": "R from unnecessary disambiguation",
	"Redirect from unnecessary disambiguation": "R from unnecessary disambiguation",
	"Redirect from unneeded disambig": "R from unnecessary disambiguation",
	"Redirect from unneeded disambiguation": "R from unnecessary disambiguation",
	"Redirect ud": "R from unnecessary disambiguation",
	"Redirect undis": "R from unnecessary disambiguation",
	
	"R to user": "R to user namespace",
	"R to userspace": "R to user namespace",
	"Redirect to user namespace": "R to user namespace",
	
	"R from userbox template": "R to userbox",
	"R to userbox template": "R to userbox",
	"R ub": "R to userbox",
	"Redirect to userbox": "R to userbox",
	
	"Redirect from verb": "R from verb",
	"R from verb phrase": "R from verb",
	"Redirect from verb phrase": "R from verb",
	"R vb": "R from verb",
	"Redirect vb": "R from verb",
	"R verb": "R from verb",
	"Redirect verb": "R from verb",
	
	"R from warning template": "R to warning template",
	"R warn": "R to warning template",
	"R warning": "R to warning template",
	"Redirect to warning template": "R to warning template",
	
	"R from history": "R with history",
	"Redirect with history": "R with history",
	"Rwh": "R with history",
	
	"R foh": "R with old history",
	"R from old history": "R with old history",
	"R woh": "R with old history",
	"Redirect old": "R with old history",
	"Redirect with old history": "R with old history",
	
	"R cartoon": "R from work",
	"R creative work": "R from work",
	"R drawing": "R from work",
	"R from blog": "R from work",
	"R from cartoon": "R from work",
	"R from creative work": "R from work",
	"R from drawing": "R from work",
	"R from musical": "R from work",
	"R from opera": "R from work",
	"R from operetta": "R from work",
	"R from painting": "R from work",
	"R from play": "R from work",
	"R from poem": "R from work",
	"R from publication": "R from work",
	"R from sculpture": "R from work",
	"R from short story": "R from work",
	"R musical": "R from work",
	"R opera": "R from work",
	"R operetta": "R from work",
	"R painting": "R from work",
	"R performance": "R from work",
	"R play": "R from work",
	"R poem": "R from work",
	"R sculpture": "R from work",
	"R short story": "R from work",
	"R shortstory": "R from work",
	"R work": "R from work",
	"Redirect from poem": "R from work",
	"Redirect from work": "R from work",
	
	"R from author": "R from writer",
	"R from writers": "R from writer",
	"R writer": "R from writer",
	"R writers": "R from writer",
	"Redirect from writer": "R from writer",
	
	"R yr": "R from year",
	
	"Printworthy": "R printworthy",
	"Printworthy redirect": "R printworthy",
	"Printworthy redirects": "R printworthy",
	"R p": "R printworthy",
	"R printable": "R printworthy",
	"R pw": "R printworthy",
	"R suitable for offline version": "R printworthy",
	"R yes print": "R printworthy",
	"Redirect from printworthy title": "R printworthy",
	"Redirect printworthy": "R printworthy",
	"Redirect pw": "R printworthy",
	
	"This is a redirect.": "Redirect category shell",
	"Redr"               : "Redirect category shell",
	"Rcat shell"    : "Redirect category shell",
	"RCAT shell"    : "Redirect category shell",
	"redirect shell": "Redirect category shell",
	"rcatsh"        : "Redirect category shell",
	
	"": ""
};

var wgNamespaceIds = mw.config.get('wgNamespaceIds');

var redirectTemplates = {
	/* source */
	"R from acronym": {
		"group": "fromabbreviationcapitalisationandgrammar",
		"label": "acronym"
	},
	"R from CamelCase": {
		"group": "fromabbreviationcapitalisationandgrammar",
		"label": "CamelCase"
	},
	"R from initialism": {
		"group": "fromabbreviationcapitalisationandgrammar",
		"label": "initialism"
	},
	"R from miscapitalisation": {
		"group": "fromabbreviationcapitalisationandgrammar",
		"label": "miscapitalisation",
		"implies": "R unprintworthy"
	},
	"R from modification": {
		"group": "fromabbreviationcapitalisationandgrammar",
		"label": "modification"
	},
	"R from other capitalisation": {
		"group": "fromabbreviationcapitalisationandgrammar",
		"label": "other capitalisation",
		"implies": "R unprintworthy"
	},
	"R from plural": {
		"group": "fromabbreviationcapitalisationandgrammar",
		"label": "plural",
		"implies": "R unprintworthy"
	},
	"R from adjective": {
		"group": "frompartsofspeach",
		"label": "adjective"
	},
	"R from adverb": {
		"group": "frompartsofspeach",
		"label": "adverb"
	},
	"R from common noun": {
		"group": "frompartsofspeach",
		"label": "common noun"
	},
	"R from gerund": {
		"group": "frompartsofspeach",
		"label": "gerund"
	},
	"R from proper noun": {
		"group": "frompartsofspeach",
		"label": "proper noun"
	},
	"R from verb": {
		"group": "frompartsofspeach",
		"label": "verb"
	},
	"R from alternative spelling": {
		"group": "fromspelling",
		"label": "alternative spelling"
	},
	"R from alternative transliteration": {
		"group": "fromspelling",
		"label": "alternative transliteration"
	},
	"R from American English": {
		"group": "fromspelling",
		"label": "American English",
		"implies": "R unprintworthy"
	},
	"R from ASCII": {
		"group": "fromspelling",
		"label": "ASCII-only title",
		"auto": "from-ascii-to-unicode"
	},
	"R from British English": {
		"group": "fromspelling",
		"label": "British English",
		"implies": "R unprintworthy"
	},
	"R from diacritic": {
		"group": "fromspelling",
		"label": "diacritic",
		"implies": "R unprintworthy"
	},
	"R from ligature": {
		"group": "fromspelling",
		"label": "ligature",
		"implies": "R unprintworthy"
	},
	"R from misspelling": {
		"group": "fromspelling",
		"label": "misspelling",
		"implies": "R unprintworthy"
	},
	"R from South Indian spelling": {
		"group": "fromspelling",
		"label": "South Indian spelling",
		"implies": "R unprintworthy"
	},
	"R from stylization": {
		"group": "fromspelling",
		"label": "stylization"
	},
	"R from Unicode": {
		"group": "fromspelling",
		"label": "Unicode"
	},
	"R from Wade–Giles romanization": {
		"group": "fromspelling",
		"label": "Wade–Giles romanization"
	},
	"R from alternative language": {
		"group": "fromalternativenamesgeneral",
		"label": "alternative language"
	},
	"R from alternative name": {
		"group": "fromalternativenamesgeneral",
		"label": "alternative name"
	},
	"R from antonym": {
		"group": "fromalternativenamesgeneral",
		"label": "antonym",
		"implies": ["R printworthy"]
	},
	"R from company name": {
		"group": "fromalternativenamesgeneral",
		"label": "company name"
	},
	"R from demonym": {
		"group": "fromalternativenamesgeneral",
		"label": "demonym"
	},
	"R from eponym": {
		"group": "fromalternativenamesgeneral",
		"label": "eponym"
	},
	"R from former name": {
		"group": "fromalternativenamesgeneral",
		"label": "former name"
	},
	"R from historic name": {
		"group": "fromalternativenamesgeneral",
		"label": "historic name"
	},
	"R from incomplete name": {
		"group": "fromalternativenamesgeneral",
		"label": "incomplete name"
	},
	"R from incorrect name": {
		"group": "fromalternativenamesgeneral",
		"label": "incorrect name",
		"implies": "R unprintworthy"
	},
	"R from letter–word combination": {
		"group": "fromalternativenamesgeneral",
		"label": "letter–word combination"
	},
	"R from long name": {
		"group": "fromalternativenamesgeneral",
		"label": "long name"
	},
	"R from numerals": {
		"group": "fromalternativenamesgeneral",
		"label": "numerals"
	},
	"R from portmanteau": {
		"group": "fromalternativenamesgeneral",
		"label": "portmanteau"
	},
	"R from predecessor company name": {
		"group": "fromalternativenamesgeneral",
		"label": "predecessor company name"
	},
	"R from Roman numerals": {
		"group": "fromalternativenamesgeneral",
		"label": "Roman numerals"
	},
	"R from short name": {
		"group": "fromalternativenamesgeneral",
		"label": "short name"
	},
	"R from sort name": {
		"group": "fromalternativenamesgeneral",
		"label": "sort name"
	},
	"R from ambiguous sort name": {
		"group": "fromalternativenamesgeneral",
		"label": "ambiguous sort name"
	},
	"R from less specific name": {
		"group": "fromalternativenamesgeneral",
		"label": "less specific name"
	},
	"R from more specific name": {
		"group": "fromalternativenamesgeneral",
		"label": "more specific name"
	},
	"R from synonym": {
		"group": "fromalternativenamesgeneral",
		"label": "synonym"
	},
	"R from Canadian settlement name": {
		"group": "fromalternativenamesgeography",
		"label": "Canadian settlement name"
	},
	"R from city and state": {
		"group": "fromalternativenamesgeography",
		"label": "city and state"
	},
	"R from city and province": {
		"group": "fromalternativenamesgeography",
		"label": "city and province"
	},
	"R from London place name": {
		"group": "fromalternativenamesgeography",
		"label": "London place name"
	},
	"R from more specific geographic name": {
		"group": "fromalternativenamesgeography",
		"label": "more specific geographic name"
	},
	"R from name and country": {
		"group": "fromalternativenamesgeography",
		"label": "name and country"
	},
	"R from postal abbreviation": {
		"group": "fromalternativenamesgeography",
		"label": "postal abbreviation"
	},
	"R from postal code": {
		"group": "fromalternativenamesgeography",
		"label": "postal code"
	},
	"R from UK postcode": {
		"group": "fromalternativenamesgeography",
		"label": "UK postcode"
	},
	"R from US postal abbreviation": {
		"group": "fromalternativenamesgeography",
		"label": "US postal abbreviation"
	},
	"R from birth name": {
		"group": "fromalternativenamespeople",
		"label": "birth name"
	},
	"R from given name": {
		"group": "fromalternativenamespeople",
		"label": "given name"
	},
	"R from married name": {
		"group": "fromalternativenamespeople",
		"label": "married name"
	},
	"R from name with title": {
		"group": "fromalternativenamespeople",
		"label": "name with title",
		"implies": "R unprintworthy"
	},
	"R from non-neutral name": {
		"group": "fromalternativenamespeople",
		"label": "non-neutral name",
		"implies": "R unprintworthy"
	},
	"R from personal name": {
		"group": "fromalternativenamespeople",
		"label": "personal name",
		"implies": "R unprintworthy"
	},
	"R from pseudonym": {
		"group": "fromalternativenamespeople",
		"label": "pseudonym"
	},
	"R from subsidiary title": {
		"group": "fromalternativenamespeople",
		"label": "subsidiary title",
		"implies": "R unprintworthy"
	},
	"R from surname": {
		"group": "fromalternativenamespeople",
		"label": "surname"
	},
	"R from Twitter username": {
		"group": "fromalternativenamespeople",
		"label": "Twitter username"
	},
	"R from alternative scientific name": {
		"group": "fromalternativenamesscientific",
		"label": "alternative scientific name"
	},
	"R from scientific abbreviation": {
		"group": "fromalternativenamesscientific",
		"label": "scientific abbreviation",
		"implies": ["R printworthy"]
	},
	"R from scientific name": {
		"group": "fromalternativenamesscientific",
		"label": "scientific name",
		"implies": ["R printworthy"]
	},
	"R from monotypic taxon": {
		"group": "fromalternativenamesscientific",
		"label": "monotypic taxon"
	},
	"R plant with possibilities": {
		"group": "fromalternativenamesscientific",
		"label": "plant with possibilities"
	},
	"R taxon with possibilities": {
		"group": "fromalternativenamesscientific",
		"label": "taxon with possibilities"
	},
	"R from airline code": {
		"group": "fromalternativenamestechnical",
		"label": "airline code"
	},
	"R from airport code": {
		"group": "fromalternativenamestechnical",
		"label": "airport code"
	},
	"R from ATC code": {
		"group": "fromalternativenamestechnical",
		"label": "ATC code"
	},
	"R from ATCvet code": {
		"group": "fromalternativenamestechnical",
		"label": "ATCvet code"
	},
	"R from Bluebook abbreviation": {
		"group": "fromalternativenamestechnical",
		"label": "Bluebook abbreviation"
	},
	"R from brand name": {
		"group": "fromalternativenamestechnical",
		"label": "brand name"
	},
	"R from CAS Number": {
		"group": "fromalternativenamestechnical",
		"label": "CAS Number"
	},
	"R from code": {
		"group": "fromalternativenamestechnical",
		"label": "code"
	},
	"R from drug trade name": {
		"group": "fromalternativenamestechnical",
		"label": "drug trade name"
	},
	"R from file extension": {
		"group": "fromalternativenamestechnical",
		"label": "file extension"
	},
	"R from filename": {
		"group": "fromalternativenamestechnical",
		"label": "filename"
	},
	"R from gene symbol": {
		"group": "fromalternativenamestechnical",
		"label": "gene symbol"
	},
	"R from IMO number": {
		"group": "fromalternativenamestechnical",
		"label": "IMO number",
	},
	"R from imprint": {
		"group": "fromalternativenamestechnical",
		"label": "imprint",
	},
	"R from Java package name": {
		"group": "fromalternativenamestechnical",
		"label": "Java package name",
		"implies": "R unprintworthy"
	},
	"R from mathematical symbol or equation": {
		"group": "fromalternativenamestechnical",
		"label": "mathematical symbol or equation"
	},
	"R from MathSciNet abbreviation": {
		"group": "fromalternativenamestechnical",
		"label": "MathSciNet abbreviation"
	},
	"R from molecular formula": {
		"group": "fromalternativenamestechnical",
		"label": "molecular formula"
	},
	"R from NLM abbreviation": {
		"group": "fromalternativenamestechnical",
		"label": "NLM abbreviation"
	},
	"R from product name": {
		"group": "fromalternativenamestechnical",
		"label": "product name"
	},
	"R from slogan": {
		"group": "fromalternativenamestechnical",
		"label": "slogan"
	},
	"R from stock symbol": {
		"group": "fromalternativenamestechnical",
		"label": "stock symbol"
	},
	"R from symbol": {
		"group": "fromalternativenamestechnical",
		"label": "symbol"
	},
	"R from systematic abbreviation": {
		"group": "fromalternativenamestechnical",
		"label": "systematic abbreviation"
	},
	"R from systematic name": {
		"group": "fromalternativenamestechnical",
		"label": "systematic  name"
	},
	"R from technical name": {
		"group": "fromalternativenamestechnical",
		"label": "technical name"
	},
	"R from trademark": {
		"group": "fromalternativenamestechnical",
		"label": "trademark"
	},
	"R comics from alternative name": {
		"group": "fromcomics",
		"label": "comics from alternative name"
	},
	"R comics from merge": {
		"group": "fromcomics",
		"label": "comics from merge"
	},
	"R comics from related word": {
		"group": "fromcomics",
		"label": "comics from related word"
	},
	"R comics with possibilities": {
		"group": "fromcomics",
		"label": "comics with possibilities"
	},
	"R from ambiguous term": {
		"group": "fromdisambiguations",
		"label": "ambiguous term",
		"implies": "R unprintworthy"
	},
	"R from incomplete disambiguation": {
		"group": "fromdisambiguations",
		"label": "incomplete disambiguation"
	},
	"R from incorrect disambiguation": {
		"group": "fromdisambiguations",
		"label": "incorrect disambiguation"
	},
	"R from other disambiguation": {
		"group": "fromdisambiguations",
		"label": "other disambiguation"
	},
	"R from predictable disambiguation": {
		"group": "fromdisambiguations",
		"label": "predictable disambiguation",
		"implies": "R unprintworthy"
	},
	"R from unnecessary disambiguation": {
		"group": "fromdisambiguations",
		"label": "unnecessary disambiguation"
	},
	"R from fictional character": {
		"group": "fromfiction",
		"label": "fictional character"
	},
	"R from fictional element": {
		"group": "fromfiction",
		"label": "fictional element"
	},
	"R from fictional location": {
		"group": "fromfiction",
		"label": "fictional location"
	},
	"R from ISO 4 abbreviation": {
		"group": "fromisocodes",
		"label": "ISO 4 abbreviation",
		"implies": ["R printworthy"]
	},
	"R from ISO 639 code": {
		"group": "fromisocodes",
		"label": "ISO 639 code"
	},
	"R from ISO 3166 code": {
		"group": "fromisocodes",
		"label": "ISO 3166 code"
	},
	"R from ISO 4217 code": {
		"group": "fromisocodes",
		"label": "ISO 4217 code"
	},
	"R from ISO 15924 code": {
		"group": "fromisocodes",
		"label": "ISO 15924 code"
	},
	"R from album": {
		"group": "fromrelatedinfo",
		"label": "album"
	},
	"R from animal": {
		"group": "fromrelatedinfo",
		"label": "animal"
	},
	"R from book": {
		"group": "fromrelatedinfo",
		"label": "book",
		"implies": "R unprintworthy"
	},
	"R from catchphrase": {
		"group": "fromrelatedinfo",
		"label": "catchphrase"
	},
	"R from cover song": {
		"group": "fromrelatedinfo",
		"label": "cover song"
	},
	"R from domain name": {
		"group": "fromrelatedinfo",
		"label": "domain name"
	},
	"R from top-level domain": {
		"group": "fromrelatedinfo",
		"label": "top-level domain"
	},
	"R from film": {
		"group": "fromrelatedinfo",
		"label": "film"
	},
	"R from gender": {
		"group": "fromrelatedinfo",
		"label": "gender"
	},
	"R from journal": {
		"group": "fromrelatedinfo",
		"label": "journal"
	},
	"R from legislation": {
		"group": "fromrelatedinfo",
		"label": "legislation",
		"implies": "R unprintworthy"
	},
	"R from list topic": {
		"group": "fromrelatedinfo",
		"label": "list topic"
	},
	"R from phrase": {
		"group": "fromrelatedinfo",
		"label": "phrase"
	},
	"R from quotation": {
		"group": "fromrelatedinfo",
		"label": "quotation"
	},
	"R from related word": {
		"group": "fromrelatedinfo",
		"label": "related word"
	},
	"R from school": {
		"group": "fromrelatedinfo",
		"label": "school"
	},
	"R from song": {
		"group": "fromrelatedinfo",
		"label": "song"
	},
	"R from subtopic": {
		"group": "fromrelatedinfo",
		"label": "subtopic"
	},
	"R from team": {
		"group": "fromrelatedinfo",
		"label": "team"
	},
	"R from telephone number": {
		"group": "fromrelatedinfo",
		"label": "telephone number"
	},
	"R from work": {
		"group": "fromrelatedinfo",
		"label": "work"
	},
	"R from year": {
		"group": "fromrelatedinfo",
		"label": "year"
	},
	"R from member": {
		"group": "fromrelatedpeople",
		"label": "member"
	},
	"R from person": {
		"group": "fromrelatedpeople",
		"label": "person"
	},
	"R from relative": {
		"group": "fromrelatedpeople",
		"label": "relative"
	},
	"R from spouse": {
		"group": "fromrelatedpeople",
		"label": "spouse"
	},
	"R from writer": {
		"group": "fromrelatedpeople",
		"label": "writer"
	},
	"R from bus route": {
		"group": "fromtransportation",
		"label": "bus route"
	},
	"R from London bus route": {
		"group": "fromtransportation",
		"label": "London bus route"
	},
	"R from NYC bus route": {
		"group": "fromtransportation",
		"label": "NYC bus route"
	},
	"R from highway": {
		"group": "fromtransportation",
		"label": "highway"
	},
	"R from highway in region": {
		"group": "fromtransportation",
		"label": "highway in region"
	},
	"R from highway in region without possibilities": {
		"group": "fromtransportation",
		"label": "highway in region without possibilities"
	},
	"R from railroad name with ampersand": {
		"group": "fromtransportation",
		"label": "railroad name with ampersand"
	},
	"R from route number": {
		"group": "fromtransportation",
		"label": "route number"
	},
	"R from duplicated article": {
		"group": "frommergersduplicatesandmoves",
		"label": "duplicated article"
	},
	"R from merge": {
		"group": "frommergersduplicatesandmoves",
		"label": "merge"
	},
	"R from move": {
		"group": "frommergersduplicatesandmoves",
		"label": "move"
	},
	"R with history": {
		"group": "frommergersduplicatesandmoves",
		"label": "with history"
	},
	"R with old history": {
		"group": "frommergersduplicatesandmoves",
		"label": "with old history",
		"implies": "R unprintworthy"
	},
	"R avoided double redirect": {
		"group": "fromnavigation",
		"label": "avoided double redirect"
	},
	"R from drafts": {
		"group": "fromnavigation",
		"label": "drafts"
	},
	"R from file metadata link": {
		"group": "fromnavigation",
		"label": "file metadata link"
	},
	"R mentioned in hatnote": {
		"group": "fromnavigation",
		"label": "mentioned in hatnote"
	},
	"R from remote page": {
		"group": "fromnavigation",
		"label": "remote page"
	},
	"R from shortcut": {
		"group": "fromnavigation",
		"label": "shortcut",
		"conflict": "R from template shortcut"
	},
	"R from subpage": {
		"group": "fromnavigation",
		"label": "subpage"
	},
	"R from template shortcut": {
		"group": "fromnavigation",
		"label": "template shortcut",
		"conflict": "R from shortcut"
	},
	/* TO */
	"R to acronym": {
		"group": "togrammarpunctuationandspelling",
		"label": "acronym"
	},
	"R to ASCII": {
		"group": "togrammarpunctuationandspelling",
		"label": "ASCII-only title",
		"implies": "R unprintworthy"
	},
	"R to diacritic": {
		"group": "togrammarpunctuationandspelling",
		"label": "diacritic"
	},
	"R to initialism": {
		"group": "togrammarpunctuationandspelling",
		"label": "initialism"
	},
	"R to ligature": {
		"group": "togrammarpunctuationandspelling",
		"label": "ligature",
		"implies": "R unprintworthy"
	},
	"R to plural": {
		"group": "togrammarpunctuationandspelling",
		"label": "plural",
		"implies": "R unprintworthy"
	},
	"R to former name": {
		"group": "toalternativenames",
		"label": "former name"
	},
	"R to historic name": {
		"group": "toalternativenames",
		"label": "historic name"
	},
	"R to joint biography": {
		"group": "toalternativenames",
		"label": "joint biography"
	},
	"R to monotypic taxon": {
		"group": "toalternativenames",
		"label": "monotypic taxon"
	},
	"R to name with title": {
		"group": "toalternativenames",
		"label": "name with title"
	},
	"R to numerals": {
		"group": "toalternativenames",
		"label": "numerals"
	},
	"R to scientific name": {
		"group": "toalternativenames",
		"label": "scientific name"
	},
	"R to systematic name": {
		"group": "toalternativenames",
		"label": "systematic name"
	},
	"R to technical name": {
		"group": "toalternativenames",
		"label": "technical name"
	},
	"R comics to list entry": {
		"group": "tocomics",
		"label": "comics to list entry"
	},
	"R comics naming convention": {
		"group": "tocomics",
		"label": "comics naming convention"
	},
	"R comics to section": {
		"group": "tocomics",
		"label": "comics to section"
	},
	"R to anchor": {
		"group": "tomiscellaneous",
		"label": "anchor",
		"implies": "R unprintworthy"
	},
	"R to anthroponymy page": {
		"group": "tomiscellaneous",
		"label": "anthroponymy page"
	},
	"R to decade": {
		"group": "tomiscellaneous",
		"label": "decade article"
	},
	"R to disambiguation page": {
		"group": "tomiscellaneous",
		"label": "disambiguation page"
	},
	"R to list entry": {
		"group": "tomiscellaneous",
		"label": "list entry"
	},
	"R to redirect template": {
		"group": "tomiscellaneous",
		"label": "redirect template",
	},
	"R to related topic": {
		"group": "tomiscellaneous",
		"label": "related topic"
	},
	"R to section": {
		"group": "tomiscellaneous",
		"label": "section",
		"auto": "anchor"
	},
	"R to sports league": {
		"group": "tomiscellaneous",
		"label": "sports league"
	},
	"R to stub template": {
		"group": "tomiscellaneous",
		"label": "stub template",
	},
	"R to subpage": {
		"group": "tomiscellaneous",
		"label": "subpage"
	},
	"R to subtopic": {
		"group": "tomiscellaneous",
		"label": "subtopic"
	},
	"R to TV episode list entry": {
		"group": "tomiscellaneous",
		"label": "TV episode list entry"
	},
	"R to userbox": {
		"group": "tomiscellaneous",
		"label": "userbox",
	},
	"R to warning template": {
		"group": "tomiscellaneous",
		"label": "warning template",
	},
	"R to category namespace": {
		"group": "tonamespaces",
		"label": "category namespace (from other namespaces)",
		"target-namespace": wgNamespaceIds.category,
		"xnr-only": true
	},
	"R to draft namespace": {
		"group": "tonamespaces",
		"label": "draft namespace (from other namespaces)",
		"target-namespace": wgNamespaceIds.draft
	},
	"R to help namespace": {
		"group": "tonamespaces",
		"label": "help namespace",
		"target-namespace": wgNamespaceIds.help
	},
	"R to main namespace": {
		"group": "tonamespaces",
		"label": "main namespace (from other namespaces)",
		"target-namespace": 0,
		"xnr-only": true
	},
	"R to portal namespace": {
		"group": "tonamespaces",
		"label": "portal namespace",
		"target-namespace": wgNamespaceIds.portal
	},
	"R to project namespace": {
		"group": "tonamespaces",
		"label": "project namespace",
		"target-namespace": wgNamespaceIds.project
	},
	"R to talk page": {
		"group": "tonamespaces",
		"label": "talk namespace (from non-talk namespaces)",
		"target-talk": true
	},
	"R to template namespace": {
		"group": "tonamespaces",
		"label": "template namespace (from other namespaces)",
		"target-namespace": wgNamespaceIds.template,
		"xnr-only": true
	},
	"R to user namespace": {
		"group": "tonamespaces",
		"label": "user namespace (from other namespaces)",
		"target-namespace": wgNamespaceIds.user
	},
	/* miscellanea */
	"R category with possibilities": {
		"group": "misc",
		"label": "category with possibilities"
	},
	"R for convenience": {
		"group": "misc",
		"label": "for convenience"
	},
	"R with possibilities": {
		"group": "misc",
		"label": "with possibilities",
		"conflict": [
			"R unprintworthy",
			"R from subtopic without possibilities",
			"R from highway in region without possibilities"
		]
	},
	"R printworthy": {
		"group": "misc",
		"label": "printworthy",
		"conflict": "R unprintworthy"
	},
	"R unprintworthy": {
		"group": "misc",
		"label": "unprintworthy",
		"conflict": "R printworthy"
	},

	"": void(0) // for convenience
};
delete redirectTemplates[""];

var api = new mw.Api();
var contentText = document.getElementById('mw-content-text');
var firstHeading = document.getElementById('firstHeading');
var redirMsg = contentText.getElementsByClassName('redirectMsg')[0];
var uiWrapper = el('div');
var edittoken = null;


function MarkupBlob(markup) {
	if (!markup) {
		this.target = '';
		this.rcatt = {};
		this.tail = '';
	} else
		this.parse(markup);
}

MarkupBlob.prototype.parse = function (markup) {
	var rdrx = /^#REDIRECT\s*\[\[\s*([^\|{}[\]]+?)\s*]]\s*/i;
	var tprx = /^\s*{{([A-Za-z ]+)((?:\|(?:[^|{}]*|{{[^|}]*}})+)*)}}\s*/i;
	var m;

	if (!(m = rdrx.exec(markup)))
		throw new Error('Not a redirect');
	markup = markup.substr(m[0].length);
	this.target = m[1];

	this.rcatt = {};
	out: while ((m = tprx.exec(markup))) {
		var alias = normaliseTitle(m[1]);
		while (templateAliases[alias])
			alias = templateAliases[alias]; // hopefully there are no loops.
		
		if (alias === "This is a redirect") {
			var params = m[2].split('|');
			for (var j = 0; j < params.length; ++j) {
				if (!params[j])
					continue;
				if (params[j].indexOf('=') !== -1)
					break out;
				alias = normaliseTitle("R " + params[j]);
				while (templateAliases[alias])
					alias = templateAliases[alias]; // hopefully there are still no loops.
				if (alias in redirectTemplates)
					this.rcatt[alias] = true;
				else
					break out;
			}
		} else if (alias === "Redirect category shell") {
			var mm, rr = /{{(.*?)}}/g;
			while (mm = rr.exec(m[2])) {
				alias = normaliseTitle(mm[1]);
				while (templateAliases[alias])
					alias = templateAliases[alias];
				if (alias in redirectTemplates)
					this.rcatt[alias] = true;
			}
		} else if (alias in redirectTemplates) {
			if (m[2]) // TODO
				break;
			this.rcatt[alias] = true;
		} else {
			break;	
		}
		markup = markup.substr(m[0].length);
	}

	this.tail = markup;
};

MarkupBlob.prototype.toString = function () {
	var markup = '#REDIRECT [[' + this.target + ']]';
	var tail = '';
	var wrapped = [];
	for (var key in this.rcatt) {
		if (this.rcatt[key])
			if ((wrapped.length < 6) && /^R\s+/.test(key))
				wrapped.push('{{' + key + '}}\n');
			else
				tail += '{{' + key + '}}\n';
		
	}
	if (wrapped.length)
		markup += "\n{{Redirect category shell|\n" + wrapped.join("") + "}}\n";
	markup += tail + '\n';
	markup += this.tail;
	return markup;
};

function buildTagList(rcatt) {
	function makeCheckBox(key) {
		return el('label', [
			el('input', null, {
				type: "checkbox",
				checked: (key in rcatt) ? "checked" : null,
			}, {
				change: function (ev) {
					rcatt[key] = this.checked;
				}
			}),
			' ',
			redirectTemplates[key].label
		], {
			"title": redirectTemplates[key].tooltip
		});
	}
	var list = el('dl', null, { "class": "tag-list" });
	var group = {};
	for (var key in templateGroups) {
		list.appendChild(el('dt', templateGroups[key]));
		list.appendChild(el('dd', group[key] = el('ul')));
	}
	for (var key in redirectTemplates) {
		var label = makeCheckBox(key);
		group[redirectTemplates[key].group].appendChild(el('li', label));
	}
	return list;
}

function buildEditingUI(mblob, saveCallback) {
	var statusbar;
	var needsCheck = true;
	var doSave;
	var uiLink, uiTarget;
	mblob = mblob || new MarkupBlob();
	
	function setStatus(status) {
		while (statusbar.firstChild)
			statusbar.removeChild(statusbar.firstChild);
		if (status) {
			if (typeof status === 'string')
				statusbar.appendChild(document.createTextNode(status));
			else {
				for (var j = 0; j < status.length; ++j) {
					if (typeof status[j] === 'string')
						statusbar.appendChild(document.createTextNode(status[j]));
					else
						statusbar.appendChild(status[j]);
				}
			}
		}
	}
	
	function inputChanged(ev) {
		/*jshint validthis:true */
		try {
			mblob.target = this.value;
			var t = new mw.Title(this.value);
			var frag = t.getFragment() ? '#' + normaliseAnchor(t.getFragment()) : '';
			uiLink.href = mw.util.getUrl(t.getPrefixedDb(), { redirect: "no" }) + frag;
			setStatus();
		} catch (e) {
			setStatus('Invalid title.');
			uiLink.href = 'javascript:void(0);';
		}
		needsCheck = true;
	}
	
	var uiStatusLine;
	var ui = el('form', [
		el('div', [
			el('ul', [
				el('li', [
					uiTarget = el('input', null, {
						'type': 'text',
						'class': 'redirectText',
						'value': mblob.target
					}, {
						'input': inputChanged,
						'change': inputChanged,
						'blur': function (ev) { // i would not have to write this, if it were not for jQuery. seriously.
							if (mblob.target === this.value)
								return;
							inputChanged.call(this, ev);
						}
					})
				])
			], { 'class': 'redirectText' })
		], { 'class': 'redirectMsg' }),
		buildTagList(mblob.rcatt),
		uiStatusLine = el('p', [
			statusbar = el('span', [], {
				'class': 'status-line'
			}),
			el('span', [
				link(["Statistics for this page"], 'https://tools.wmflabs.org/pageviews?project=en.wikipedia.org&pages=' + encodeURIComponent(mw.config.get('wgPageName'))),
				' • ',
				link(["WP:TMR"], mw.util.getUrl("Wikipedia:Template messages/Redirect pages")),
				' • ',
				link(["About Sagittarius+"], mw.util.getUrl("User:Sam Sailor/Scripts/Sagittarius+"))
			], {
				'style': 'float: right;'
			})
		])
	], {
		'action': 'javascript:void(0)',
		'class': 'kephir-sagittarius-editor'
	}, {
		'submit': function (ev) {
			ev.preventDefault();
			if (uiStatusLine.childNodes[1].childNodes[0]) {
				var patrolVal = uiStatusLine.childNodes[1].childNodes[0].childNodes[0].checked;
				if (patrolVal) {
					api.get({
						"action": "query",
						"format": "json",
						"prop": "revisions",
						"meta": "tokens",
						"titles": mw.config.get('wgPageName'),
						"rvprop": "ids",
						"rvslots": "",
						"rvlimit": "1",
						"rvdir": "newer",
						"type": "patrol"
					}, {
						success: function (result) {
							//console.log(mw.config.get('wgPageName'))
							var patrolToken = result["query"]["tokens"]["patroltoken"];
							var revIDpart = result["query"]["pages"];
							var revID = null;
							for (var page in revIDpart) {
								revID = revIDpart[page]["revisions"][0]["revid"];
							}
							//console.log(revID)
							api.post({
								"action": 'patrol',
								"revid": revID,
								"token": patrolToken
							}, {
								success: function (result) {
									if (result.error) {
										setStatus([
											'API error: "',
											result.error.info,
											'" [code: ', el('code', [result.error.code]), ']'
										]);
										console.log(result.error)
										return;
									}
								}
							});
						}
					});
				}
			}
			ui.doCheck(saveCallback);
		}
	});
	ui.statusLine = uiStatusLine;
	ui.statusbar = statusbar;

	var sectCache = {};
	var $uiTarget = jQuery(uiTarget);
	$uiTarget.suggestions({
		submitOnClick: false,
		delay: 500,
		fetch: function (query) {
			$uiTarget.suggestions('suggestions', []);
			if (query.indexOf('#') !== -1) {
				var title = query.substr(0, query.indexOf('#'));
				var sect = query.substr(query.indexOf('#') + 1);

				if (sectCache[title]) {
					var normSect = normaliseAnchor(sect);
					$uiTarget.suggestions('suggestions',
						sectCache[title].filter(function (item) {
							var norm = normaliseAnchor(item.anchor);
							return norm.substr(0, normSect.length) === normSect;
						})
					);
					return;	
				}

				api.get({
					action: 'parse',
					page: title,
					prop: 'sections|properties',
					redirects: '1'
				}).then(function (result) {
					if (result.parse.redirects && result.parse.redirects.length) {
						// XXX
						return;
					}
					
					var disambig = false; // XXX

					var normSect = normaliseAnchor(sect);
					sectCache[title] = result.parse.sections.map(function (item) {
						return {
							anchor: item.anchor,
							title: title + '#' + decodeURIComponent(item.anchor.replace(/_/g, ' ').replace(/\.([0-9A-Fa-f][0-9A-Fa-f])/g, '%')), // XXX: hack
							disambig: disambig,
							toString: function () {
								return this.title;
							}
						};
					});

					$uiTarget.suggestions('suggestions',
						sectCache[title].filter(function (item) {
							var norm = normaliseAnchor(item.anchor);
							return norm.substr(0, normSect.length) === normSect;
						})
					);
				});
				return;
			}

			api.get({
				action: 'query',
				generator: 'allpages',
				gapprefix: query,
				gaplimit: 16,
				prop: 'info|pageprops',
			}).then(function (result) {
				var pglist = [];
				for (var pgid in result.query.pages) {
					var page = result.query.pages[pgid];
					pglist.push({
						title: page.title,
						pageid: page.pageid,
						disambig: page.pageprops && ('disambiguation' in page.pageprops),
						redirect: 'redirect' in page,
						toString: function () {
							return this.title;
						}
					});
				}
				$uiTarget.suggestions('suggestions', pglist);
			});
		},
		result: {
			render: function (item, content) {
				var elm = this[0];
				elm.appendChild(el('span', [item.title], {
					style: item.redirect ? 'font-style: italic' : ''
				}));
				if (item.disambig)
					elm.appendChild(el('small', [' (disambiguation page)']));
				if (item.redirect)
					elm.appendChild(el('small', [' (redirect)']));
			},
			
			select: function ($textbox) {
				var item = this.data('text');
				var textbox = $textbox[0];

				textbox.value = item.title;
				if (item.redirect) {
					api.get({
						action: 'query',
						pageids: item.pageid,
						redirects: '1'
					}).then(function (result) {
						var redir = result.query.redirects.pop();
						textbox.value = redir.to + (redir.tofragment ? '#' + redir.tofragment : '');
					});
				}

				return true;
			}
		}
	});

	ui.doCheck = function (callback) {
		var that = this;

		if (!/^\s*[^\|{}[\]]+\s*$/.test(mblob.target)) {
			setStatus(['Error: the target page name is invalid.']);
			return;
		}

		if (needsCheck) {
			var oldTarget = mblob.target;
			var normTarget;
			try {
				normTarget = new mw.Title(oldTarget);
			} catch (e) {
				setStatus(['"', oldTarget, '" is not a valid page name. Try again to proceed anyway.']);
				return;
			}

			setStatus(['Checking target validity...']);
			needsCheck = false;

			api.get({
				action: 'parse',
				page: oldTarget = mblob.target,
				prop: 'sections',
				redirects: '1'
			}, {
				success: function (result) {
					var m;
					if (result.error) {
						if (result.error.code === 'missingtitle') {
							setStatus([
								'Error: The target page "',
								link([normTarget.getPrefixedText()], mw.util.getUrl(normTarget.getPrefixedText(), { "class": "new" })),
								'" does not exist. Try again to proceed anyway.'
							]);
						} else {
							setStatus([
								'API error: "',
								result.error.info,
								'" [code: ', el('code', [result.error.code]), ']'
							]);
						}
						return;
					}

					if (result.parse.redirects && result.parse.redirects[0]) {
						var newTarget = result.parse.redirects[0].to + (result.parse.redirects[0].tofragment ? "#" + result.parse.redirects[0].tofragment : "");
						setStatus([
							'Error: The target page "',
							link([normTarget.getPrefixedText()], mw.util.getUrl(normTarget.getPrefixedText(), { redirect: "no" })),
							'" is already a redirect to "',
							link([newTarget], mw.util.getUrl(newTarget, { redirect: "no" })),
							'". Try again to proceed anyway, or ',
							link(['retarget this redirect to point there directly'], function () {
								uiTarget.value = mblob.target = newTarget +
									((!result.parse.redirects[0].tofragment && normTarget.fragment) ? '#' + normTarget.fragment : '');
								needsCheck = true;
							}),
							'.'
						]);
						return;
					}

					if (normTarget.fragment) { // we have a section link
						var sect = normaliseAnchor(normTarget.fragment);
						var isValidSect = false;

						var sectlist = result.parse.sections;
						for (var j = 0; j < sectlist.length; ++j) {
							if (sectlist[j].anchor === sect)
								isValidSect = true;
						}

						if (!isValidSect) {
							setStatus([
								'Error: The target page "',
								link([normTarget.getPrefixedText()], mw.util.getUrl(normTarget.getPrefixedText(), { redirect: "no" })),
								'" does not have a a section called "',
								normTarget.fragment,
								'". Try again to proceed anyway.'
							]);

							return;
						}
					}

					callback(setStatus);
				}
			});
			
			return;
		}

		callback(setStatus);
	};

	return ui;
}

if ((mw.config.get('wgAction') === 'view') && (mw.config.get('wgArticleId') === 0)) { // nonexistent page.
	uiWrapper.appendChild(el('div', [
		link(['Create a redirect'], function () {
			while (uiWrapper.hasChildNodes())
				uiWrapper.removeChild(uiWrapper.firstChild);
			var mblob = new MarkupBlob();
			var ui = buildEditingUI(mblob, function (setStatus) {
				setStatus(['Saving...']);
				api.post({
					action: 'edit',
					title: mw.config.get('wgPageName'),
					token: mw.user.tokens.get('editToken'),
					createonly: 1,
					summary: 'Redirecting to [[' + mblob.target + ']] ([[User:Wugapodes/Capricorn|♑]])',
					text: mblob.toString()
				}, {
					success: function (result) {
						if (result.error) {
							setStatus([
								'API error: "',
								result.error.info,
								'" [code: ', el('code', [result.error.code]), ']'
							]);
							return;
						}
						setStatus(['Saved. Reloading page...']);
						if (/redirect=no/.test(location.href)) // XXX
							location.reload();
						else
							location.search = location.search ? location.search + '&redirect=no' : '?redirect=no';
					}
				});				
			});
			//console.log(ui.statusLine);
			//console.log(ui.statusLine.firstChild);
			var userName = mw.user.getName();
			api.get({
				"action": "query",
				"format": "json",
				"list": "users",
				"usprop": "groups",
				"ususers": userName
			}, { success: function(result) {
				var groups = result["query"]["users"][0]["groups"]
				if (groups.includes("patroller")) {
					ui.statusbar.insertBefore(el('label', [
								el('input', [], {
								'class': 'checkbox',
								'type': 'checkbox',
								'id': 'patrol',
								'value': 'patrol'
								}), 'Mark as patrolled?']), ui.statusbar.firstChild);
					}
				ui.statusLine.insertBefore(el('input', null, {
					type: 'submit',
					value: 'Save'
				}), ui.statusLine.firstChild);
				}
			}),
			uiWrapper.appendChild(ui);
		}), ' from this page with Capricorn'
	], {
		"class": "kephir-sagittarius-invite"
	}));
	contentText.parentNode.insertBefore(uiWrapper, contentText);
} else if ((mw.config.get('wgAction') === 'view') && mw.config.get('wgIsRedirect') && redirMsg) {
	// start editor immediately
	uiWrapper.appendChild(el('div', ['Loading page source…'], {
		"class": "kephir-sagittarius-loading"
	}));
	contentText.insertBefore(uiWrapper, contentText.firstChild);
	api.get({
		action: 'query',
		prop: 'info|revisions',
		rvprop: 'timestamp|content',
		pageids: mw.config.get('wgArticleId'),
		rvstartid: mw.config.get('wgRevisionId'),
		rvlimit: 1,
		rvdir: 'older',
		intoken: 'edit',
	}, {
		success: function (result) {
			if (result.error) {
				uiWrapper.appendChild(el('div', [
					'API error: "',
					result.error.info,
					'" [code: ', el('code', [result.error.code]), ']. Reload to try again.'
				], {
					"class": "kephir-sagittarius-error"
				}));
				return;
			}
			while (uiWrapper.hasChildNodes())
				uiWrapper.removeChild(uiWrapper.firstChild);
			var page = result.query.pages[mw.config.get('wgArticleId')];
			var mblob;
			var token = page.edittoken;
			try {
				mblob = new MarkupBlob(page.revisions[0]['*']);
			} catch(e) {
				uiWrapper.appendChild(el('div', ['Error: unable to parse page. Edit the source manually.'], {
					"class": "kephir-sagittarius-error"
				}));
				return;
			}
			redirMsg.parentNode.removeChild(redirMsg);
			var ui = buildEditingUI(mblob, function (setStatus) {
				setStatus(['Saving...']);
				api.post({
					action: 'edit',
					title: mw.config.get('wgPageName'),
					basetimestamp: page.revisions[0].timestamp,
					token: mw.user.tokens.get('editToken'),
					summary: 'Redirecting to [[' + mblob.target + ']] ([[User:Wugapodes/Capricorn|♑]])',
					text: mblob.toString()
				}, {
					success: function (result) {
						if (result.error) {
							setStatus([
								'API error: "',
								result.error.info,
								'" [code: ', el('code', [result.error.code]), ']'
							]);
							return;
						}
						setStatus(['Saved. Reloading page...']);
						if (/redirect=no/.test(location.href)) // XXX
							location.reload();
						else
							location.search = location.search ? location.search + '&redirect=no' : '?redirect=no';
					}
				});				
			});
			var userName = mw.user.getName();
			api.get({
				"action": "query",
				"format": "json",
				"list": "users",
				"usprop": "groups",
				"ususers": userName
			}, { success: function(result) {
				var groups = result["query"]["users"][0]["groups"]
				if (groups.includes("patroller")) {
					ui.statusbar.insertBefore(el('label', [
								el('input', [], {
								'class': 'checkbox',
								'type': 'checkbox',
								'id': 'patrol',
								'value': 'patrol'
								}), 'Mark as patrolled?']), ui.statusbar.firstChild);
					}
				}
			});
			ui.statusLine.insertBefore(el('input', null, {
				type: 'submit',
				value: 'Save'
			}), ui.statusLine.firstChild);
			uiWrapper.appendChild(ui);
		}
	});
} else if ((mw.config.get('wgPageContentModel') === 'wikitext') && ((mw.config.get('wgAction') === 'edit') || (mw.config.get('wgAction') === 'submit'))) {
	if (mw.util.getParamValue('section'))
		return;
	var editform = document.getElementById('editform');

	if (editform.wpTextbox1.readOnly)
		return;

	var uiPivot = document.getElementsByClassName('wikiEditor-ui')[0];

	var ui, mblob;
	firstHeading.appendChild(document.createTextNode(' '));
	firstHeading.appendChild(link(['♑'], function () {
		if (ui && ui.parentNode)
			ui.parentNode.removeChild(ui);

		try {
			mblob = new MarkupBlob(editform.wpTextbox1.value);
		} catch (e) {
			alert("Error: unable to parse page. This page is probably not a redirect.");
			return;
		}

		ui = buildEditingUI(mblob, function () {
			editform.wpSummary.value = 'Redirecting to [[' + mblob.target + ']] ([[User:Wugapodes/Capricorn|♑]])';
			editform.wpTextbox1.value = mblob.toString();
			mblob = null;
			ui.style.display = 'none';
			uiPivot.style.display = '';
		});
		ui.style.display = 'none';
		ui.statusLine.insertBefore(el('input', null, {
			type: "button",
			value: "Cancel",
		}, {
			click: function () {
				mblob = null;
				ui.style.display = 'none';
				uiPivot.style.display = '';				
			}
		}), ui.statusLine.firstChild);
		ui.statusLine.insertBefore(el('input', null, {
			type: "submit",
			value: "Check"
		}), ui.statusLine.firstChild);
		uiPivot.parentNode.insertBefore(ui, uiPivot);
		uiPivot.style.display = 'none';
		ui.style.display = '';
	}, {
		"class": "kephir-sagittarius-editlink",
		"title": "Edit this redirect with Capricorn"
	}));

	var submitButton;
	var inputs = editform.getElementsByTagName('input');
	for (var i = 0; i < inputs.length; ++i) {
		inputs[i].addEventListener('click', function (ev) {
			submitButton = this;
		}, false);
	}

	editform.addEventListener('submit', function (ev) {
		if (submitButton !== editform.wpSave)
			return;
		if (mblob) {
			ev.preventDefault();
			ev.stopImmediatePropagation();
			ui.doCheck(function (setStatus) {
				setStatus(['Proceeding with saving...']);
				editform.wpTextbox1.value = mblob.toString();
				editform.wpSummary.value = 'Redirecting to [[' + mblob.target + ']] ([[User:Wugapodes/Capricorn|♑]])';
				mblob = null;
				editform.submit();
			});
		}
	}, false);
}

if (!window.kephirSagittariusFollowCategoryRedirects)
if ((mw.config.get('wgAction') === 'view') && (mw.config.get('wgNamespaceNumber') === wgNamespaceIds.category)) {
	var pagesList = document.getElementById('mw-pages').getElementsByClassName('mw-redirect');
	for (var i = 0; i < pagesList.length; ++i) {
		pagesList[i].href += '?redirect=no';
	}
}

});
/*</source>
 
[[Category:Wikipedia scripts]]
*/