function removeDecoration (decoratedString) {
	result = '';
	for (characterIndex = 0; characterIndex < decoratedString.length; characterIndex ++) {
		currentCharacterName = characterName [decoratedString.charCodeAt (characterIndex)];
		decorationIndex = currentCharacterName.indexOf (' WITH');
		if (decorationIndex == -1) {
			result += decoratedString.charAt (characterIndex);
		}
		else {
			undecoratedCharacterName = currentCharacterName.substring (0, decorationIndex);
			result += String.fromCharCode (characterCode [undecoratedCharacterName]);
		}
	}
	return result;
}

function applyRegexpToCharacterNames (inputString, inputRegexp, replacement) {
	result = '';
	for (characterIndex = 0; characterIndex < inputString.length; characterIndex ++) {
		currentCharacterName = characterName [inputString.charCodeAt (characterIndex)];
		newCharacterName = currentCharacterName.replace (inputRegexp, replacement);
		result += String.fromCharCode(characterCode [newCharacterName]);
	}
	return result;
}

function buildSystemName (inputString) {
	result = '';
	mustCapitalize = false;
	for (characterIndex = 0;
			 characterIndex < inputString.length;
			 characterIndex ++) {
		currentCharacterName = characterName [inputString.charCodeAt (characterIndex)];
		if (currentCharacterName.match (new RegExp ('DIGIT'))) {
			mustCapitalize = true;
			result += String.fromCharCode(characterCode [currentCharacterName]);
		}
		if (currentCharacterName.match (new RegExp ('LETTER'))) {
			newCharacterName = currentCharacterName.replace (new RegExp (' WITH .*'), '');	// Remove decorations
			if (mustCapitalize) {
				newCharacterName = newCharacterName.replace (new RegExp (' SMALL '), ' CAPITAL ');	// make a capital letter
			}
			else {
				newCharacterName = newCharacterName.replace (new RegExp (' CAPITAL '), ' SMALL ');	// make a small letter
			}
			mustCapitalize = false;
			result += String.fromCharCode(characterCode [newCharacterName]);
		}
		else {
			mustCapitalize = true;
		}
	}
	return result;
}